首页 > 解决方案 > Keycloak JavaScript 适配器在 Internet Explorer 中收到 400 Bad Request

问题描述

我正在使用 Keycloak 的 JavaScript 适配器将 Web 应用程序与我工作场所的 SSO 连接起来。代码如下所示(服务器数据通过 keycloak.json 文件加载):

const keycloak = Keycloak();
keycloak.init({onLoad: "login-required"}).success(authenticated => {
    ...
}).error(() => {
    ...
});

它在 Firefox 和 Chrome 上按预期工作,但在 Internet Explorer (v. 11) 上,令牌的 POST 请求返回 400 Bad Request。这是我的 Internet Explorer 配置或 Keycloak-js 本身的问题吗?这是来自 IE的屏幕截图。

标签: javascriptkeycloakhttp-status-code-400

解决方案


解决方案相当简单:Keycloak-js 想要访问public的客户端必须能够读取客户端 ID 并将其发送到服务器。cookie 中缺少该属性或其数据(Firefox 和 Chrome 显然自己解决了这个问题)会导致从 Keycloak 服务器发送 400 Bad Request。


推荐阅读