oauth - sesion - API de Twitter-Cerrar sesión
como hago para cerrar sesion en twitter en otros dispositivos (3)
Estoy usando OAuth en mi aplicación web y los usuarios pueden iniciar sesión con Twitter.
Quiero agregar el botón "cambiar la cuenta de Twitter", que en realidad borra la sesión y luego abre el autorizar_url.
Como la liberación de la sesión en mi aplicación web no cierra sesión en Twitter, authorize_url autenticará automáticamente al usuario actual de twitter.com. Eso significa que no puedo cerrar la sesión, a menos que envíe al usuario a twitter.com.
¿Es posible con la API? ¿Cuál es la mejor manera de implementar esto?
La sesión con Twitter está definida por una cookie propiedad de Twitter, algo sobre lo que no tienes control. No puede cerrar sesión en Twitter en su nombre.
Si desea que alguien pueda usar su funcionalidad de "cambiar cuenta de twitter", deberá pasarlos de nuevo al enlace de OAuth, pero use la /oauth/authorize
lugar de la /oauth/authenticate
. Esto le permitirá al usuario cambiar sus credenciales de usuario en Twitter durante el apretón de manos en lugar de volver a autenticarse usando su sesión de Twitter existente.
Alternativamente, podría tener una noción separada de usuarios en su propia aplicación, por lo que tiene su propio modelo de usuario que tiene muchas cuentas de Twitter asociadas. De esta forma, podría permitir que sus usuarios cambien las cuentas de forma más regular. Tendrían que autorizar su aplicación por adelantado para cada una de sus cuentas de Twitter, pero después de eso tendrían todas sus claves para cada una de sus cuentas de Twitter.
Perdón por comentar como respuesta. La solución abraham funciona muy bien, pero para borrar el campo de nombre de usuario también debe agregar screen_name=
a la solicitud GET.
Puede usar oauth / authenticate y agregar force_login=true
como se especifica en GET oauth / authenticate . Esto solicitará al usuario un formulario de inicio de sesión.