我用$ .ajax加载了一个xml文件列表。
其中一些受Basic Basic保护,在xml路径下有一个htaccess。
并非所有人都受到保护。
如何加载受保护且未受保护的文件? 如果我用btoa设置标题或beforeSend(用户& pass),我只能加载受保护的,但是不保护给我错误。
如果我没有设置标题或者在发送之前发送,我想显示浏览器弹出窗口进行登录,但它没有显示并给我这个错误并返回error.status 0:
XMLHttpRequest无法加载http://domain.com/path/file.xml?no=1381827329。 Access-Control-Allow-Origin不允许原点http://www.domain.com。
请求的标题:
Accept:application/xml, text/xml, */*; q=0.01
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
Origin:http://www.domain.com
Referer:http://www.domain.com/
User-Agent:Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36
我认为问题在于不在列表中
X-Requested-With:XMLHttpRequest
感谢所有人,抱歉我的英语不好,再见!
答案 0 :(得分:1)
这是同源策略的问题。参见:
为什么会这样。
使用JSONP或HTTP访问控制(CORS)(https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS)来避免这种情况。