Passport(Jared Hanson)、戦略パスポートの使用PayPal:アクセストークンを取得できません
openIDまたはOAuthでPaypalを使用するにはどうすればよいですか?私はパスポート-ペイパル-OAuthの戦略(https://github.com/jaredhanson/passport-paypal-oauth)を使用してい
、
注:私のルートは、ローカルホストで始まる:4000/API /ユーザー
マイペイパルエンドポイント:
var passport_paypal = require('../middlewares/passport-paypal');
router.get('/signin/paypal', passport_paypal.authenticate('paypal-signin', {
scope: 'openid profile email'}));
router.get('/signin/paypal/callback', function(req, res, next){
passport_paypal.authenticate('paypal-signin', function(err, user, info){
// Handle cases
//return res.status(xxx).json('..
});
マイペイパル戦略:
var PaypalStrategy = require('passport-paypal-oauth').Strategy;
passport.use('paypal-signin', new PaypalStrategy({
clientID : "MY APP ID",
clientSecret : "MY APP SECRET",
callbackURL : "http://localhost:4000/api/users/signin/paypal/callback",
tokenURL : "https://api.sandbox.paypal.com/v1/oauth2/token",
authorizationURL : "https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize"
}, function(token, refreshToken, profile, done) {
!!!!! Not called ...
// Get user profie
// Save in db or other handling
}));
問題:私は呼び出すとhttp://localhost:4000/api/users/signin/paypal、 I入手ブラウザで次の答え:
[InternalOAuthError: failed to obtain access token]
name: 'InternalOAuthError',
message: 'failed to obtain access token',
oauthError:
{ statusCode: 400,
data: '{"error":"invalid_client","error_description":"Client credentials are missing"}' } }
function(token, refreshToken, profile, done) {
は決して呼び出されません。
どうしたのですか?
私はすでに、私はそれで問題が解決するかどうか知らないが、行わ関数があれば真の値とコールバックで呼ばれるべきhttp://127.0.0.1:4000/api/users/signin/paypal
代わりhttp://localhost:4000/api/users/signin/paypal
は、私がpassport-、パスポート、ペイパルを使用してみてくださいpaypal-op enidconnectとそれは動作しません。..わからない – Kael
を、それはあなたの問題を解決しますが、callbackUrlがHTTPを含める必要がある場合:// localhostを:4000 httpで – Molda
は:// – Molda