我需要一些关于如何登录到VSC扩展的输入/建议。我已经使用https://www.npmjs.com/package/angular-auth-oidc-client库为angular中的web应用程序做了类似的工作。
我正在开发VSC扩展(typescript语言),在使用它之前,我必须对用户进行身份验证。为此,我有cloudIDP auth URL,我必须将请求转发到该URL,以便用户首先登录。一旦用户登录,用户应返回到VSC扩展,然后开始使用内置扩展命令。
我使用的是带有代码流的https://www.npmjs.com/package/openid-client库。我能够打开登录url,让用户登录,返回到vscode扩展,但没有令牌。
let req = Client.authorizationUrl({
client_id: 'CLIENT:ID',
client_secret: 'CLIENT_SECRET',
redirect_uri: 'vscode://EXTENSION_NAME/auth',
scope: 'openid profile email offline_access',
response_type: ['code'],
code_challenge,
code_challenge_method: 'S256',
});
//This opens browser window from vscode and user gets logged in and comes back to extension
vscode.env.openExternal(vscode.Uri.parse(req)).then((response) => {
console.log('Signin response: ', response); // returns true
// not sure how to proceed here
});我的方法是正确的,还是我需要在这里做其他事情?
请指导我,提前谢谢。
Alpesh
发布于 2021-06-25 22:06:02
我把它修好了。
重定向后,我必须处理UriHandler类中的逻辑,然后使用重定向后收到的代码参数在那里获取令牌。
如果你想了解(或将来),请让我知道,我很乐意在那里指导。
向您致敬,阿尔佩什
https://stackoverflow.com/questions/68071998
复制相似问题