从 HTTPS 页面强制 AJAX 调用为 HTTPS
Forcing AJAX call to be HTTPS from HTTPS Page
当前正在从 HTTPS jsp 进行 AJAX 调用以从另一个 jsp 页面调用数据。然而,我们遇到了混合内容问题:
Mixed Content: The page at 'https://etc/' was loaded over HTTPS, but
requested an insecure XMLHttpRequest endpoint
'http://etc/path/to/other/page.jsp'. This request has been blocked;
the content must be served over HTTPS.
如何强制 AJAX 调用通过 HTTPS 调用?
AJAX 调用如下所示:
var url = "/path/to/other/page.jsp";
$.ajax({
type: "POST",
url: url,
data: {data: data},
dataType: "html",
timeout: 4000,
success: function(html) {
/* Code on Success */
}
},
error: function(request, status, error) {
/* Code on Failure
}
});
如果我尝试从 HTTPS 调用到 HTTP,我可以理解,但我不想这样做。我想强制使用 HTTPS 调用 JSP,这样我就可以避免混合内容问题。
提前致谢!
/* 编辑 */
有趣的是,我在变量 URL 中放入了一个绝对路径:
var url = "https://etc/path/to/other/page.jsp";
我遇到了同样的问题。有什么东西迫使这个 AJAX 调用成为 HTTP?
尝试使用其他扩展名或像这样使用带有 .htaccess 等的文件夹
var url = "https://etc/path/to/other/page/";
当前正在从 HTTPS jsp 进行 AJAX 调用以从另一个 jsp 页面调用数据。然而,我们遇到了混合内容问题:
Mixed Content: The page at 'https://etc/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://etc/path/to/other/page.jsp'. This request has been blocked; the content must be served over HTTPS.
如何强制 AJAX 调用通过 HTTPS 调用?
AJAX 调用如下所示:
var url = "/path/to/other/page.jsp";
$.ajax({
type: "POST",
url: url,
data: {data: data},
dataType: "html",
timeout: 4000,
success: function(html) {
/* Code on Success */
}
},
error: function(request, status, error) {
/* Code on Failure
}
});
如果我尝试从 HTTPS 调用到 HTTP,我可以理解,但我不想这样做。我想强制使用 HTTPS 调用 JSP,这样我就可以避免混合内容问题。
提前致谢!
/* 编辑 */
有趣的是,我在变量 URL 中放入了一个绝对路径:
var url = "https://etc/path/to/other/page.jsp";
我遇到了同样的问题。有什么东西迫使这个 AJAX 调用成为 HTTP?
尝试使用其他扩展名或像这样使用带有 .htaccess 等的文件夹
var url = "https://etc/path/to/other/page/";