jquery - 将 jQuery 的 ajax() 函数与 SSL 客户端证书结合使用

标签 jquery ajax rest authentication ssl

我想使用 jQuery 的 ajax() 函数对 REST 服务进行 XHR 调用。基本上,这工作正常,但 REST 服务只能通过 https 访问,并且需要客户端使用客户端证书进行身份验证。

如何使用 jQuery 的 ajax() 函数发送客户端证书?

最佳答案

就 HTTP 和 JavaScript 层而言,客户端证书身份验证 (a) 仅在服务器请求时执行,并且 (b) 由浏览器透明地完成。

当服务器请求客户端证书时(这可能需要在 HTTP 请求后重新协商),浏览器应提供一个弹出窗口以选择证书(这取决于浏览器,不受任何 JavaScript 或 HTML 控制) 或根据其设置自动选择一个。

因此,jQuery 的 ajax() 函数不能对客户端证书做任何事情。

我不确定浏览器是否会触发客户端证书选择弹出窗口,如果它仅在 AJAX 调用期间首先出现(这可能取决于浏览器)。但是,如果已经选择了客户端证书(或者如果选择是自动的),浏览器将使用它进行身份验证,就像它用于任何其他正常请求一样。

关于jquery - 将 jQuery 的 ajax() 函数与 SSL 客户端证书结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54458956/

相关文章:

TCL 中的 REST 服务器

javascript - jQuery $ ('.someClass' ).click(function(){}) 只适用于当前存在的元素?

html - REST,超文本和非浏览器客户端

rest - ColdFusion 10 RESTful Web 服务无法接收 gzip 压缩(二进制)正文

javascript - JQuery AJAX 成功 + 淡入

javascript - 当滚动条距离窗口底部 200px 时加载 AJAX 页面,窗口大小可能会有所不同

javascript - 想用不同的计时器显示 div

javascript - 如何在 JavaScript 中获取 HTML 元素的水平滚动百分比?

javascript - jQuery 获取表中不按顺序的下一个文本框

javascript - 要在 Javascript 中以特殊格式列出的字符串