我需要在auth0中设置其他参数,以使受众网址正常工作。在authlock中你可以简单地执行此操作:
var lock = new Auth0Lock('clientID', 'account.auth0.com', {
auth: {
params: {
audience: 'url'
}
}
});
我想我需要在我的authservice中将代码添加到我的auth0config中,但我不确定是什么以及如何:
const auth0Config = {
// needed for auth0
clientID: 'id',
// needed for auth0cordova
clientId: 'id',
domain: 'url',
callbackURL: location.href,
packageIdentifier: 'id',
};
谁能告诉我该怎么做?
答案 0 :(得分:1)
对于Auth0离子2快速入门,尝试添加受众here(以及更新范围信息):
阅读源代码,预计这将在后来当cordova库使用auth0.js时工作,它最终调用this code并且应该将baseOptions与传入的Options合并。但是,由于某种原因,似乎没有效果。
相反,我必须通过在Cordova library itself为观众添加额外的条目来强制执行baseOptions,例如
function CordovaAuth(options) {
this.clientId = options.clientId;
this.domain = options.domain;
this.redirectUri = options.packageIdentifier + '://' + options.domain + '/cordova/' + options.packageIdentifier + '/callback';
this.client = new auth0.Authentication({
clientID: this.clientId,
domain: this.domain,
// just hard coded here for time being - need a check to see if present first..
audience: options.audience,
_telemetryInfo: telemetry
});
}
然后通过here instead传递观众 - 这就是您在问题中输入的相同代码段。执行上述操作确实有效,并生成一个带有提供范围的JWT Access令牌,但不清楚为什么简单地将选项添加到选项不起作用...
有趣的是,API似乎表明它是expects audience,而这一行暗示了受众群体would be propogated,并用于构建authorizeUrl
here。
在Auth0快速入门小组中留下了一个未解决的问题。但上述解决方案将允许您同时使用JWT Access令牌。你可以分叉the repo并按照这种方式进行控制,或者只是进行测试,然后在node_modules
文件夹中编辑the source以检查它是否适合您。
一旦我收到Auth0快速入门小组关于"官方"的回复,请回复此答案的更新。解决这个问题。