如何包含npm模块client-oauth2的代理配置


const ClientOAuth2 = require('client-oauth2');
const oauth2 = new ClientOAuth2({
clientId: 'clientId',
clientSecret: 'clientSecret',
accessTokenUri: 'https://fakeurl.com/v1/auth/token',
});
oauth2 .credentials.getToken().then(function (user) {
console.log(user);
}).catch(function (error) {
console.log(error);
});

有没有一种方法可以在请求令牌时包括代理设置,给定我在公司网络中运行此代码

我快速查看了一下,找不到简单的方法。除了代理功能外,我还注意到它缺少Open Id Connect功能,例如:

  • 查找元数据
  • 授权代码流(PKCE(
  • 对用户信息终结点的调用

要求

为你的应用程序选择一个库是一个重要的决定,这里有一些人们通常会寻找的东西:

  • 基于标准(适用于任何授权服务器(
  • 按照最新的OAuth 2.1和Open Id Connect建议进行认证
  • 支持HTTP代理(在开发时查看OAuth消息非常有用(

NODEJS解决方案

如果您正在使用Node,那么可能值得考虑Node openid客户端库,这就是我使用的库。以下是我的API的一些相关代码:

  • 查找元数据-请注意,可以提供代理来支持代理
  • 设置HTTP代理-我使用TunnelAgent.httpsOverHttp代理对HTTPS OAuth URL的调用
  • OAuth操作-请注意,有一些自定义类使这些任务变得更容易

最新更新