我的代码相对简单。我有一个在发送请求之前定义的URL,然后有一个$.get()
请求,我希望该请求返回一个JSON对象。代码如下。
var url = "url"; //Removed for clarity
$.get(url, function (data) {
alert("hi");
});
请求中使用的网址正确。我已将代码复制并粘贴到浏览器中,并且收到了端点期望的响应。
但是,当执行此JQuery代码时,不会调用回调函数,也不会触发警报。为什么会这样?
编辑:忘记发布我在控制台中发现的错误消息。
我收到这个:
2Initial%20Loan#:1 Access to XMLHttpRequest at
'-snip url-' from
origin 'https://localhost:44358' has been blocked by CORS policy: No
'Access-Control-Allow-Origin' header is present on the requested resource.
与GET请求不起作用有什么关系吗?
答案 0 :(得分:0)
URL可能有问题。您指定的语法正确无误,并且已选中
var url = "https://jsfiddle.net/"; //Removed for clarity
$.get(url, function (data) {
alert("hi");
});
答案 1 :(得分:0)
这是CORS的经典示例,代表跨源资源共享。浏览器会阻止将AJAX请求发送到JavaScript文件所源自的域以外的域。
如错误消息所述,您必须从服务器代码中设置“ Access-Control-Allow-Origin” http响应标头。在此处阅读有关CORS的更多信息[在此处CORS MDN
中输入链接描述