iOS
การรวมระบบล็อกอิน Twitter ในแอป iOS ด้วย Swift สำหรับนักพัฒนา
8 นาที
เพิ่มการเข้าสู่ระบบ twitter ในแอป ios ของคุณโดยใช้ swift บทนำ ส่วนนี้อธิบายวิธีการสร้างแอปที่มีการลงทะเบียนผู้ใช้โดยใช้การเข้าสู่ระบบ twitter และ https //www back4app com/product/parse server ผ่าน back4app ข้อกำหนดเบื้องต้น ในการทำให้การเริ่มต้นนี้เสร็จสมบูรณ์ คุณต้องการ https //developer apple com/xcode/ แอปที่สร้างขึ้นที่ back4app ติดตาม https //www back4app com/docs/get started/new parse app เพื่อเรียนรู้วิธีการสร้างแอป parse ที่ back4app แอป ios ที่เชื่อมต่อกับ back4app หมายเหตุ ติดตาม https //www back4app com/docs/ios/parse objc sdk เพื่อสร้างโปรเจกต์ xcode ที่เชื่อมต่อกับ back4app 1 การตั้งค่า twitter เริ่มใช้งานฟังก์ชัน twitter คุณต้อง ไปที่ https //twitter com/login?redirect after login=https%3a%2f%2fdeveloper twitter com%2fapps , ลงชื่อเข้าใช้ด้วยบัญชี twitter และคลิกที่ สร้างแอปใหม่ สร้างแอปใหม่ เพิ่มคีย์ผู้บริโภค twitter ของแอปพลิเคชันของคุณในหน้าการตั้งค่าของ parse แอปพลิเคชันของคุณ เมื่อถูกถามให้ระบุ “callback url” สำหรับแอป twitter ของคุณ โปรดใส่ url ที่ถูกต้อง เช่น http //twitter oauth callback http //twitter oauth callback ค่านี้จะไม่ถูกใช้โดยแอปพลิเคชัน ios หรือ android ของคุณ แต่จำเป็นต้องใช้เพื่อเปิดใช้งานการตรวจสอบสิทธิ์ผ่าน twitter เพิ่ม accounts framework และ social framework social framework ไลบรารีลงในโปรเจกต์ xcode ของคุณ เพิ่มสิ่งต่อไปนี้เมื่อคุณเริ่มต้น parse sdk เช่น inapplication\ didfinishlaunchingwithoptions inapplication\ didfinishlaunchingwithoptions 1 pftwitterutils initializewithconsumerkey("your consumer key", consumersecret "your consumer secret") 2 เข้าสู่ระบบและลงทะเบียน pftwitterutils pftwitterutils ให้วิธีการในการอนุญาตให้ pfusers pfusers เข้าสู่ระบบหรือสมัครสมาชิกผ่าน twitter ซึ่งทำได้โดยใช้ loginwithblock loginwithblock หรือ loginwithtarget loginwithtarget ข้อความ 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 } เมื่อรันโค้ดนี้ จะเกิดเหตุการณ์ดังต่อไปนี้ ผู้ใช้จะเห็นกล่องโต้ตอบเข้าสู่ระบบ twitter ผู้ใช้ทำการยืนยันตัวตนผ่าน twitter และแอปของคุณจะได้รับการเรียกกลับ sdk ของเราได้รับข้อมูล twitter และบันทึกลงใน pfuser pfuser หากเป็นผู้ใช้ใหม่ตามชื่อ twitter ผู้ใช้นั้นจะถูกสร้างขึ้น บล็อกของคุณ block block จะถูกเรียกใช้พร้อมกับผู้ใช้ 3 การเชื่อมโยง twitter หากคุณต้องการเชื่อมโยง pfuser pfuser ที่มีอยู่กับบัญชี twitter คุณสามารถเชื่อมโยงได้ดังนี้ 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 } ขั้นตอนที่เกิดขึ้นเมื่อเชื่อมโยงจะคล้ายกับการเข้าสู่ระบบ ความแตกต่างคือเมื่อเข้าสู่ระบบสำเร็จ pfuser ที่มีอยู่จะถูกอัปเดตด้วยข้อมูล twitter การเข้าสู่ระบบในอนาคตผ่าน twitter จะทำให้ผู้ใช้เข้าสู่บัญชีที่มีอยู่ หากคุณต้องการยกเลิกการเชื่อมโยง twitter จากผู้ใช้ ให้ทำตามนี้ 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 การเรียก api ของ twitter sdk ของเรามีวิธีที่ตรงไปตรงมาสำหรับการลงนามในคำขอ http api ของคุณไปยัง https //dev twitter com/rest/public เมื่อแอปของคุณมี pfuser pfuser เพื่อทำการร้องขอผ่าน api ของเรา คุณสามารถใช้ pf twitter pf twitter singleton ที่จัดเตรียมโดย 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()