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 https //www back4app com/product/parse server a través de back4app requisitos previos para completar este inicio rápido, necesitas xcode https //developer apple com/xcode/ una aplicación creada en back4app sigue el tutorial de nueva aplicación parse https //www back4app com/docs/get started/new parse app 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) https //www back4app com/docs/ios/parse objc sdk 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 https //twitter com/login?redirect after login=https%3a%2f%2fdeveloper twitter com%2fapps , iniciar sesión con una cuenta de twitter y hacer clic en \<font color="#2166ae">crear nueva aplicación\</font> 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 \<font color="#2166ae">http //twitter oauth callback \</font> 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 \<font color="#2166ae"> \</font> y \<font color="#2166ae">social framework\</font> bibliotecas a tu proyecto de xcode agrega lo siguiente donde inicializas el sdk de parse, como \<font color="#2166ae">inapplication\ didfinishlaunchingwithoptions\</font> 1 pftwitterutils initializewithconsumerkey("your consumer key", consumersecret "your consumer secret") 2 iniciar sesión y registrarse \<font color="#2166ae">pftwitterutils\</font> proporciona una forma de permitir que tus \<font color="#2166ae">pfusers\</font> inicien sesión o se registren a través de twitter esto se logra utilizando el \<font color="#2166ae">loginwithblock\</font> o \<font color="#2166ae">loginwithtarget\</font> 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 \<font color="#2166ae">pfuser\</font> si es un nuevo usuario basado en el identificador de twitter, entonces ese usuario es creado tu \<font color="#2166ae">bloque\</font> es llamado con el usuario 3 vinculación de twitter si deseas asociar un \<font color="#2166ae">pfuser\</font> 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 \<font color="#2166ae">pfuser\</font> para hacer una solicitud a través de nuestra api, puedes usar el \<font color="#2166ae">pf twitter\</font> singleton proporcionado por \<font color="#2166ae">pftwitterutils\</font> 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()