【发布时间】:2016-05-18 03:45:57
【问题描述】:
我有一个 js 应用程序,我使用带有公共客户端和标准流程的 keycloak 1.7-final JavaScript 适配器,它工作正常,但现在我想为应用程序添加离线功能,但不知道如何获取离线令牌。根据documentation,客户端可以通过在向Keycloak发送授权请求时添加参数“scope=offline_access”来请求离线令牌。 问题是我不知道在哪里添加参数。我尝试添加到“keycloak.config”和“keycloak.init”,但它不起作用。
在 keycloak.config 中:
keycloak: {
url: 'link omitted',
realm: 'sisdn-realm',
clientId: 'sisdn',
redirect_uri: 'link omitted',
flow: 'standard',
'enable-cors': true,
scope: 'offline_access'
}
在 keycloak.init 中
const keycloakConf = require('keycloak')//this is the same config above
var keycloak = new keycloakConf(config.keycloak)
keycloak.init({
onLoad: 'login-required',
checkLoginIframe: false,
scope: 'offline_access'
})
.success(authenticated => {
if(!authenticated)
dispatch(loginFailure())
else {
global.keycloak = keycloak
dispatch(loginSuccess())
}
})
【问题讨论】:
-
您必须在授权请求本身中直接添加“scope=offline_access”。你能添加你用来发送请求的代码吗?
-
这是授权请求本身,您可以从我的编辑中看到这是我用来发出请求的内容
-
文档引用了一个
offline-access-app的例子,你看了吗? -
是的,它的 java 应用程序将 scope=offline_access 直接添加到查询参数,但我看不出它对 javascript 适配器有何帮助
-
我会把这个问题放在 github 存储库中的问题中,但有趣的是存储库中没有问题选项卡
标签: javascript offline keycloak