mja*_*jel 9 javascript ajax https jquery
每当我创建一个jQuery.ajax请求时,它都可以在URL使用HTTP协议时正常工作.但是当我向HTTPs服务器发送相同的请求时,它会在没有标题[ HTTP_X_REQUESTED_WITH: XMLHttpRequest]的情况下发送.因此服务器无法知道这是一个AJAX请求!
我试过了:
beforeSendCrossDomain:true注意:没有跨域问题,请求有效并处理,但不是AJAX.
当前URL为http但请求的URL位于同一域但使用HTTPS时,会发生此问题. http://example.com/home 将使用AJAX POST发布到
我尝试了Kishor的方法,但标题没有被发送.我修改了它,设置标题如下:
$.ajax {
beforeSend: function(jqXHR, settings) {
jqXHR.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
},
...
};
Run Code Online (Sandbox Code Playgroud)
我正在使用jQuery 1.8.2.
小智 3
我在 http 和 https 之间做同样的事情时遇到了同样的问题。
我研究过这个问题,这是跨域问题。请尝试使用带有回调函数的 JSONP 来完成这些操作,最重要的是,您用于执行 curl 的服务器端页面必须设置一些标头以允许 http 到 https 连接。这些如下:
header("Access-Control-Allow-Origin: your https url");
header("Access-Control-Allow-Methods: POST, GET");
header("Access-Control-Max-Age: 1728000");
header("Access-Control-Allow-Headers: Content-Type, Connection, Depth, User-Agent, X-File-Size, X-Requested-With, If-Modified-Since, X-File-Name, Cache-Control");
header("Connection: close");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6460 次 |
| 最近记录: |