具体来说,我使用passport-github
进行身份验证,但我想使用针对GitHub Enterprise服务器验证的API,这显然位于不同的URls而不是github.com上。
通过源代码,我可以看到GitHubStrategy
继承自Strategy
,但这似乎是一个私有对象。
我在GitHubStrategy
的函数参数中提供的唯一选项是*
* clientID
* clientSecret
* callbackURL
* scope
* userAgent
但我想设置:
* authorizationURL
* tokenURL
* userProfileURL
* userEmailURL
但是,这些只能在Strategy(options, verify)
中设置,这似乎无法访问。
答案 0 :(得分:0)
您可以在创建策略时将其作为选项传递:
var GitHubStrategy = require('passport-github').Strategy;
passport.use(new GitHubStrategy({
clientID: GITHUB_CLIENT_ID,
clientSecret: GITHUB_CLIENT_SECRET,
callbackURL: "http://[url]/auth/github/callback",
authorizationURL: 'https://[hostname]/login/oauth/authorize'
}
));