如何使用jQuery明确提出AJAX HTTPS GET请求?我正在尝试执行以下操作。在https页面上,我有一行代码$.get("/resource"),但是出现以下错误
$.get("/resource")
XMLHttpRequest cannot load http://www.site.com/resource. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://www.site.com' is therefore not allowed access.
如果相对资源来自https页面,为什么AJAX调用会尝试使用HTTP协议访问页面?如果$ .get(url)方法默认执行此操作,那么我如何使用jQuery进行显式的HTTPS GET请求?在http://forum.jquery.com/topic/jquery-get-ajax-call-on-http-page-to- https-on-same-domain上存在类似问题的另一个人无法解决该问题。
jQuery版本是1.7.2
我解决了这个问题。事实证明,由于我们配置Django站点的方式,我需要在AJAX请求中的资源中添加尾部斜杠。如果不使用斜杠,那么Django将使用HTTP请求而不是HTTPS请求 将 带有斜杠的URL 重定向 到URL。
简而言之,我替换$.get("/resource")为$.get("/resource/")。
$.get("/resource/")
谢谢。我非常感谢您的所有帮助。