XmlHttpRequesterror:OriginnullisnotallowedbyAccess-Control-Allow-Origin
来源:互联网 发布:java开发平台搭建 编辑:程序博客网 时间:2024/06/05 02:01
在Chrome浏览器中,如果想通过AJAX请求不同域中的资源,很可能就会遇到 “Origin null is not allowed by Access-Control-Allow-Origin” 的错误。
这是因为在新版本浏览器中安全策略引起。简单的说,如果XMLHttpRequest 请求的URL和当前页面不同一个域中时,浏览器会检测响应http header中有没有 Access-Control-Allow-Origin项,如果此项值为空或者与当前页面的域不匹配时,就会报此错误。
W3C标准中有个叫Cross Origin Resource Sharing (CORS)的东东用来解决此问题。
简单的说在目标资源返回的http头中需要包含有“Access-Control-Allow-Origin”项,并且其值格需要能匹配请求源页面域。
如在 http://a.com/default.html 页面中通过 ajax 获取 http://b.com/demo.aspx 页面的内容,那么响应http header中Access-Control-Allow-Origin就必须能匹配 http://a.com,否则就会出现以上错误。
添加此 http header的方法有几种:
$.ajax, $.post, $.get访问远程地址时可能报错:
XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin
这是JS跨域访问产生的问题,解决办法要修改远程源代码:
1.请求的url指向PHP页面时,在PHP中添加 header("Access-Control-Allow-Origin: *");
2.html时,添加 <meta http-equiv="Access-Control-Allow-Origin" content="*">
- XmlHttpRequesterror:OriginnullisnotallowedbyAccess-Control-Allow-Origin
- Access-Control-Allow-Origin
- Access-Control-Allow-Origin 解决方法
- 跨域 Access-Control-Allow-Origin
- Access-Control-Allow-Origin问题
- Access-Control-Allow-Origin 错误
- iconFont Access-Control-Allow-Origin
- Access-Control-Allow-Origin 跨域
- Access-Control-Allow-Origin与跨域
- html5 cocos2d js Access-Control-Allow-Origin
- Access-Control-Allow-Origin与跨域
- Access-Control-Allow-Origin与跨域
- ajax跨域Access-Control-Allow-Origin
- Access-Control-Allow-Origin(CROS)
- CORS 头缺少 'Access-Control-Allow-Origin'
- 跨域问题:Access-Control-Allow-Origin
- Access-Control-Allow-Origin与跨域
- Access-Control-Allow-Origin与跨域
- VC HID开发笔记
- 创建表及设置属性的约束条件
- NYOJ 子串和 44
- poj 1753(位压缩+搜索)
- String,StringBuffer与StringBuilder的区别??
- XmlHttpRequesterror:OriginnullisnotallowedbyAccess-Control-Allow-Origin
- Device Compatibility
- SpringMVC中的观察者模式
- Shell脚本的控制语句
- JNI字段描述符“([Ljava/lang/String;)V”
- Mac 显示隐藏文件
- HDOJ 最大连续子序列 1231
- 第314(33W+4)
- Servlet中的跳转(redirect和forward)