我的 ajax 请求如下所示:
$.ajax({
url: self.opts.url.replace('//www.', '//'),
type: 'POST',
...
});
我放置 .replace
只是为了确定。因为我在 opts.url
中的 URL 是 "http://website.com/admin/upload-image/123"
。但我无法上传图像,因为我在控制台中收到错误: XMLHttpRequest 无法加载 http://www.website.com/。请求的资源上不存在“Access-Control-Allow-Origin” header 。因此,不允许访问来源“http://website.com”。
我在 Debug模式下仔细检查了 URL,它总是没有 www.
,但 jQuery 似乎还是要添加它。这对我来说根本没有意义。
还有我从 jQuery 的 error
函数得到的信息:
jqXHR: Object (filled statusText with "error")
textStatus: "error"
errorThrown: ""
最佳答案
正如您在错误消息中看到的,它显示:
XMLHttpRequest 无法加载 www.website.com。请求的资源上不存在“Access-Control-Allow-Origin” header 。因此,不允许访问来源“www.website.com”。
您必须在 www.website.com 网页上设置 Access-Control-Allow-Origin header 。在 php 中,这是通过以下方式完成的:
header("访问控制允许来源: http://yourwebsiteThatNeedsAccess ");
关于javascript - jQuery ajax 的 URL 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41807345/