Access-Control-Allow-Origin不允许使用Origin域名
Origin domain.com is not allowed by Access-Control-Allow-Origin
Access-Control-Allow-Origin不允许获取"Origin http://domain.com "。"错误。我想做的是我有一个新闻通讯系统,我在一个子域名和另一个子域名的新闻通讯。当用户输入不正确的电子邮件并提交信息时,代码工作正常,但是它不会显示"成功,电子邮件发送消息",并且我在提交时得到错误。
$('#submitButton').click(function(e) {
var ap = $('.appear-first:eq(0)').fadeOut(200);
if ($('#email').val() === '' || $('#email').val().search('@') == -1){
ap.css('color','#f00').text('Please enter a valid Email Address.').fadeIn(300);
e.preventDefault();
} else {
var a = $('#subscribeform');
console.log(a);
$.post('http://domain.domain.com/?p=subscribe&id=1', a.serialize(), function(re) {
console.log(re);
ap.css('color','#fff').text('Thank you for subscribing to our newsletter. You will be emailed shortly to confirm your address.').fadeIn(300);
});
}
e.preventDefault();
});
});
谢谢。
浏览器将发送一个飞行前请求,通过检查响应头来检查所请求的域是否允许CORS
。
您所请求的域应该知道您所请求的域。
那么在domain.com
上实现如下代码(PHP示例):
$allowed_domains = array("http://sub.domain.com");
if (isset($_SERVER['HTTP_ORIGIN'])
&& in_array($allowed_domains, $_SERVER['HTTP_ORIGIN'])) {
// emit CORS header
header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']);
// enable session/cookies
header('Access-Control-Allow-Credentials: true');
// optional headers here
header("Access-Control-Allow-Headers: Content-Type");
}
if ($_SERVER["REQUEST_METHOD"] === "OPTIONS") {
// CORS pre-flight request, we don't need to do anything else
exit;
}
相关文章:
- 如何解决Access Control Allow Origin错误
- 由于响应中不存在“Access Control Allow Origin”标头,跨域请求停止工作
- Wordpress:替换源(域名)链接
- Ajax调用ERror Cross Origin REquest:在rails中自动完成大学列表
- Angularjs http.get() Cross-Origin 请求被阻止
- Cookie只设置为一个域名,但网站有多个域名
- 仅验证/接受来自特定域名的电子邮件
- 使用网络服务器的IP地址而不是域名对其进行屏幕抓取
- Cross Origin Chrome Extension
- Angular Cross Origin Request CORS失败,但节点http.get()成功返回
- XMLHttpRequest : 不被 access-control-allow-origin 所允许
- XMLHttpRequest无法加载url Origin访问控制允许Origin不允许null
- 如何使用正则表达式验证单字母域名
- 可以在Access Control Allow Origin中指定端口
- 如果通过域名或IP地址导航到,则进行检测
- Access Control Allow Origin阻止我访问google api,尽管使用了dataType:
- JSONP跨原点错误'不存在Access Control Allow Origin标头'
- 角度:原点http://localhost在Access Control Allow Origin标头中找不到
- 通过php访问控制允许Origin服务器端
- Access-Control-Allow-Origin不允许使用Origin域名