我正在开发与HTTP服务器通信的WebApp。当然,我想使用HTTPS连接而不是HTTP。通过此链接Jetty - How to configure SSL,我能够为带有嵌入式Jetty的服务器创建证书。
现在,我想将创建的证书添加到我的JavaScript客户端。它是如何工作的?
目前,我的Javascript请求如下所示:如何添加证书?
var http = new XMLHttpRequest();
var url = localStorage.getItem("url") + "login";
var params = "username=" + username + "&password=" + password;
http.open("POST", url, true);
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.onreadystatechange = function() {
if (http.readyState == 4) {
// server and request all right
}
}
http.send(params);
我的WebApp仅与服务器联系,因此无需在官方授权站点上注册我的SSL密钥。我只需要告诉Javascript函数信任我的服务器即可。
最佳答案
您不能以编程方式在该级别向浏览器添加证书。浏览器将自己处理SSL证书(在全球范围内,整个浏览器),或者将使用操作系统的存储。
任何说明都将针对浏览器/操作系统。如果您想在受控环境(例如公司的Intranet)之外提供服务,则需要使用公认的授权服务使其可行。
关于javascript - 将受信任的SSL证书添加到Javascript请求中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28967310/