XMLHttpRequest; Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource
当我尝试进行ajax调用时,我在下面的chrome上得到了错误。
XMLHttpRequest cannot load javascript:;. Cross origin requests are
only supported for protocol schemes: http, data, chrome,
chrome-extension, https, chrome-extension-resource.
这是代码:
1 2 3 4 5 6 7 8 9 | $.ajax({ type:"POST", data: {pvalue : pid}, cache: false, url:"xxx.in/yy/ajax.php", success: function(data) { $modal.find('.edit-content').html(data); } |
对该特定错误消息的所有研究表明主机网页未通过http:// URL加载,并且可能是文件:URL。默认情况下,浏览器不允许来自文件:URL的跨源请求。
如果要使用ajax请求,则需要通过Web服务器加载Web页面,而不是通过文件系统加载。
以下是关于该特定错误的一些其他问题和答案,这些错误都指向用于加载页面的错误类型的URL。
"只有HTTP支持跨源请求。"加载本地文件时出错
React.js:教程中的示例不起作用
只有HTTP支持跨源请求,但它不是跨域的
http://answers.playcanvas.com/questions/833/cannot-load-model-due-to-cross-origin-request-being-blocked
https://groups.google.com/forum/#!topic/tincr-for-chrome-devtools/nA9k2qh7F-g
如果您要访问其他域中的数据,则必须覆盖Chrome的
1 2 3 4 5 6 7 8 9 10 11 | $.ajax({ type:"POST", dataType: 'jsonp', data: {pvalue : pid}, cache: false, url:"xxx.in/yy/ajax.php", success: function(data) { $modal.find('.edit-content').html(data); } }); |
如果服务器中的文件
1 2 3 4 5 6 7 8 9 10 | $.ajax({ type:"POST", data: {pvalue : pid}, cache: false, url:"ajax.php", success: function(data) { $modal.find('.edit-content').html(data); } }); |