admin管理员组文章数量:1414908
Currently making an AJAX call from a HTTPS jsp to call in data from another jsp page. We are however getting a Mixed content issue:
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.
How do you force an AJAX call to call over HTTPS?
The AJAX call looks like the following:
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
}
});
I could understand if I was trying to make a call from HTTPS to HTTP, but I don't want to. I want to force this to call the JSP using HTTPS is all, so I can avoid the Mixed Content issue.
Thank you in advance!
/* EDIT */
Interestingly I put in the variable URL an absolute path:
var url = "https://etc/path/to/other/page.jsp";
And I got the same issue. Something is forcing this AJAX call to be HTTP?
Currently making an AJAX call from a HTTPS jsp to call in data from another jsp page. We are however getting a Mixed content issue:
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.
How do you force an AJAX call to call over HTTPS?
The AJAX call looks like the following:
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
}
});
I could understand if I was trying to make a call from HTTPS to HTTP, but I don't want to. I want to force this to call the JSP using HTTPS is all, so I can avoid the Mixed Content issue.
Thank you in advance!
/* EDIT */
Interestingly I put in the variable URL an absolute path:
var url = "https://etc/path/to/other/page.jsp";
And I got the same issue. Something is forcing this AJAX call to be HTTP?
Share Improve this question edited Feb 2, 2015 at 12:36 KirisuteRanza asked Feb 2, 2015 at 12:07 KirisuteRanzaKirisuteRanza 3673 silver badges15 bronze badges 5- 4 The code as shown, when run from within a page that was requested via HTTPS already, should use HTTPS automatically, since that is how resolving relative paths to absolute ones works. If it doesn’t in your case, then there must be something else going on that we have not been told about yet. – C3roe Commented Feb 2, 2015 at 12:21
- 5 Odds are the problem is that the end point is redirecting off HTTPS. You have to fix that server side. – Quentin Commented Feb 2, 2015 at 12:38
-
3
To elaborate on what @Quentin said: if you're explicitly connecting to an
https://
address and still getting an error about the the resource beinghttp://
, that means that the server is sending a 3XX (likely a 301 or 302) response to redirect to thehttp://
resource. If you don't want this to happen, change your sever to that it doesn't respond with 3XX HTTPS-to-HTTP redirects anymore. – apsillers Commented Feb 2, 2015 at 12:51 - 1 Where is that applied? Currently using apache? – KirisuteRanza Commented Feb 2, 2015 at 14:27
- Got it. We have that redirect but we also have a section which if the URL is submitted via HTTPS, then redirect using that. We have added in the URL to this section. :) – KirisuteRanza Commented Feb 2, 2015 at 15:08
1 Answer
Reset to default 1Try use another extension or use like folder with .htaccess etc. like this
var url = "https://etc/path/to/other/page/";
本文标签: javascriptForcing AJAX call to be HTTPS from HTTPS PageStack Overflow
版权声明:本文标题:javascript - Forcing AJAX call to be HTTPS from HTTPS Page - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745168316a2645818.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论