iOS
Integrar inicio de sesión en Twitter usando Swift en iOS
8 min
agrega inicio de sesión de twitter a tu aplicación ios usando swift introducción esta sección explica cómo puedes crear una aplicación con registro de usuario usando el inicio de sesión de twitter y las características principales de parse server a través de back4app requisitos previos para completar este inicio rápido, necesitas xcode una aplicación creada en back4app sigue el tutorial de nueva aplicación parse para aprender cómo crear una aplicación parse en back4app una aplicación ios conectada a back4app nota sigue el tutorial de instalación del sdk de parse (objc) para crear un proyecto de xcode conectado a back4app 1 configuración de twitter para comenzar a usar las funciones de twitter, necesitas ir a sitio de gestión de aplicaciones de twitter , iniciar sesión con una cuenta de twitter y hacer clic en crear nueva aplicación crear nueva aplicación agrega la clave de consumidor de twitter de tu aplicación en la página de configuración de tu aplicación parse cuando se te pida especificar una “url de callback” para tu aplicación de twitter, por favor inserta una url válida como http //twitter oauth callback http //twitter oauth callback este valor no será utilizado por tu aplicación de ios o android, pero es necesario para habilitar la autenticación a través de twitter agrega el accounts framework y social framework social framework bibliotecas a tu proyecto de xcode agrega lo siguiente donde inicializas el sdk de parse, como inapplication\ didfinishlaunchingwithoptions inapplication\ didfinishlaunchingwithoptions 1 pftwitterutils initializewithconsumerkey("your consumer key", consumersecret "your consumer secret") 2 iniciar sesión y registrarse pftwitterutils pftwitterutils proporciona una forma de permitir que tus pfusers pfusers inicien sesión o se registren a través de twitter esto se logra utilizando el loginwithblock loginwithblock o loginwithtarget loginwithtarget mensajes 1 pftwitterutils loginwithblock { 2 (user pfuser?, error nserror?) > void in 3 if let user = user { 4 if user isnew { 5 print("user signed up and logged in with twitter!") 6 } else { 7 print("user logged in with twitter!") 8 } 9 } else { 10 print("uh oh the user cancelled the twitter login ") 11 } 12 } cuando se ejecuta este código, sucede lo siguiente se muestra al usuario el diálogo de inicio de sesión de twitter el usuario se autentica a través de twitter, y tu aplicación recibe una llamada de retorno nuestro sdk recibe los datos de twitter y los guarda en un pfuser pfuser si es un nuevo usuario basado en el identificador de twitter, entonces ese usuario es creado tu bloque bloque es llamado con el usuario 3 vinculación de twitter si deseas asociar un pfuser pfuser existente con una cuenta de twitter, puedes vincularlo así 1 if !pftwitterutils islinkedwithuser(user) { 2 pftwitterutils linkuser(user, { 3 (succeeded bool?, error nserror?) > void in 4 if pftwitterutils islinkedwithuser(user) { 5 print("woohoo, user logged in with twitter!") 6 } 7 }) 8 } los pasos que ocurren al vincular son muy similares a iniciar sesión la diferencia es que, en un inicio de sesión exitoso, el pfuser existente se actualiza con la información de twitter los futuros inicios de sesión a través de twitter ahora iniciarán sesión al usuario en su cuenta existente si deseas desvincular twitter de un usuario, simplemente haz esto 1 pftwitterutils unlinkuserinbackground(user, { 2 (succeeded bool?, error nserror?) > void in 3 if error == nil && succeeded { 4 print("the user is no longer associated with their twitter account ") 5 } 6 }) 6 llamadas a la api de twitter nuestro sdk proporciona una manera sencilla de firmar tus solicitudes http a la api rest de twitter https //dev twitter com/rest/public cuando tu aplicación tiene un pfuser pfuser para hacer una solicitud a través de nuestra api, puedes usar el pf twitter pf twitter singleton proporcionado por pftwitterutils pftwitterutils 1 let verify = nsurl(string "https //api twitter com/1 1/account/verify credentials json") 2 var request = nsmutableurlrequest(url verify!) 3 pftwitterutils twitter()! signrequest(request) 4 let task = nsurlsession sharedsession() datataskwithrequest(request) { data, response, error in 5 // check for error 6 // data will contain the response data 7 } 8 task resume()