no estoy seguro de lo que el servicio de OAuth que está intentando conectarse a así que voy a usar Twitter como un ejemplo. Después de crear su objeto OAuth, primero debe solicitar un token oauth. Cuando te llega ese modo, entonces usted necesita para redirigir a, por Twitter, su página de autentificación que o bien se les pide que iniciar sesión, y luego le pregunta si es aceptable para la aplicación para iniciar sesión.
oa.getOAuthRequestToken(function(error, oauth_token, oauth_token_secret, results){
if (error) new Error(error.data)
else {
req.session.oauth.token = oauth_token
req.session.oauth.token_secret = oauth_token_secret
res.redirect('https://twitter.com/oauth/authenticate?oauth_token='+oauth_token)
}
});
Cuando creó por primera vez el objeto OAuth, establece una responseURL, o la URL de devolución de llamada. Puede ser cualquier cosa, para mi aplicación es solo/oauth/callback. En esa devolución de llamada, recibe el token del verificador oauth. A continuación, utiliza los tokens de solicitud de oauth y de oauth verifier para solicitar los tokens de acceso. Cuando reciba los tokens de acceso, también recibirá cualquier otra cosa que pase, como su nombre de usuario.
app.get('/oauth/callback', function(req, res, next){
if (req.session.oauth) {
req.session.oauth.verifier = req.query.oauth_verifier
var oauth = req.session.oauth
oa.getOAuthAccessToken(oauth.token,oauth.token_secret,oauth.verifier,
function(error, oauth_access_token, oauth_access_token_secret, results){
if (error) new Error(error)
console.log(results.screen_name)
}
);
} else
next(new Error('No OAuth information stored in the session. How did you get here?'))
});
Hope this helps! Tuve los mismos problemas cuando comencé esto.
¡Muchas gracias por esto! ¿Cómo lo descubriste? Prueba y error o ¿encontró un buen tutorial? – Thomas
Realmente no encontré un tutorial. Lo averiguó sobre todo yendo a la documentación de twitter o revisando la fuente del – mattmcmanus