如何通过HTTPS发送 ajax GET请求?
$.get
抛出这个:
XMLHttpRequest cannot load https://********. Origin null is not allowed by Access-Control-Allow-Origin.
是否有另一种方法或一些解决方法可以让这个工作?
如果我使用Chrome导航到 url,我就能得到响应。我看不出它为什么不能通过 ajax 请求工作。
如何通过HTTPS发送 ajax GET请求?
$.get
抛出这个:
XMLHttpRequest cannot load https://********. Origin null is not allowed by Access-Control-Allow-Origin.
是否有另一种方法或一些解决方法可以让这个工作?
如果我使用Chrome导航到 url,我就能得到响应。我看不出它为什么不能通过 ajax 请求工作。
如果由于Same Origin Policyhttps
的原因,您当前在其中,则无法向页面发出 AJAX 请求。http
主机、端口和方案(协议)必须相同才能使 AJAX 请求工作。
您可以确保原始页面位于同一主机和方案上,或者在目标域上实施CORS(跨域资源共享)以允许此特定请求。
[jQuery v. 3.3.1]
我有一个 Web 应用程序,其中所有资源和流量都通过 HTTPS。
然而,我发现由于(Chrome 输出),我无法发送$.ajax()
或任何特定$.get
的 ,等:$.post
拒绝连接到“ http://mywebapp/api/mycall ”,因为它违反了以下内容安全策略指令:“connect-src 'self'”。
这是由于 HTTPS 页面通过 HTTP 发出 AJAX 请求,我发现无法强制 HTTPS。
疯狂的是修复它。调用$.get('/api/mycall/')
以“拒绝连接到' http://mywebapp/api/mycall '”输出上述错误,在代码中的实际调用中省略了结束正斜杠。因此,从错误看来,正斜杠似乎不存在。
我已经进行了多次调用,并且当被调用的 url 中有一个结尾斜杠时,每个调用都失败了。没有一个,同样的人都能成功。
所以调用$.ajax({ url: '/api/mycall'})
有效,而 $.ajax({ url: '/api/mycall/'})
无效。