วิธีที่จะทำให้มันขยาย
ก่อนอื่นคุณควรสังเกตว่า api เหล่านี้ใช้กลไกเดียวกันในการเข้าสู่ระบบพวกเขาทั้งหมดใช้ OAuth สำหรับการตรวจสอบสิทธิ์ สิ่งนี้คุณต้องใช้ประโยชน์จากการเริ่มต้นด้วยไลบรารี OAuth ทั่วไป อย่าใช้ไลบรารีของตนเองในการตรวจสอบสิทธิ์สิ่งเหล่านี้จะไม่สามารถใช้ได้กับผู้ให้บริการรายอื่น หากคุณได้รับความนิยม OAuth2 มันค่อนข้างง่ายที่จะเพิ่มผู้ให้บริการมากขึ้น
คุณต้องการสองคนโชคไม่ดีเพราะทวิตเตอร์ยังไม่ได้เพิ่ม OWuth2 bandwagon
OAuth ต้องการให้คุณสร้างอินเทอร์เฟซสำหรับฝ่ายตรวจสอบสิทธิ์ โทเค็นจะถูกแลกเปลี่ยนเซิร์ฟเวอร์ไปยังเซิร์ฟเวอร์ สร้างจุดเริ่มต้นหนึ่งจุดซึ่งสามารถจัดการการสื่อสารทั้งหมดได้
โทเค็นควรเก็บไว้ในตารางแยกจากบัญชีของคุณเนื่องจากเป็นโทเค็นหลายรายการและโปรไฟล์ที่เชื่อมโยงหลายรายการ บริการบางอย่างให้สองโทเค็นหนึ่งในนั้นคือโทเค็นการรีเฟรช
ตอนนี้คุณออกแบบอินเตอร์เฟสซึ่งจะสรุปฟังก์ชั่นอื่น ๆ ที่คุณต้องการ ฉันจะตั้งค่าบริการ REST แยกต่างหากสำหรับสิ่งนี้เป็นการส่วนตัว วิธีนี้คุณสามารถขยายการรับรองความถูกต้องไปยังสถานที่อื่นได้อย่างง่ายดาย
บริการบางอย่างใช้ JSON เพื่อการสื่อสารส่วนบริการอื่น ๆ สำหรับ XML และอื่น ๆ สำหรับผู้ใช้ระดับแนวหน้าคุณต้องรวมกันทั้งหมด นี่เป็นกระบวนการที่ค่อนข้างเจ็บปวด แต่ก็เป็นไปได้ที่จะหาสาเหตุที่พบได้ทั่วไปที่นี่
อีกปัญหาหนึ่งที่นี่คือบริการบางอย่างอาจไม่สามารถใช้งานได้เหมือนกัน ซึ่งหมายความว่าบริการของคุณไม่สามารถให้ API แบบเต็มตามที่คุณระบุ คุณต้องมีกลยุทธ์ที่นี่ซึ่งทำให้แอปพลิเคชันปรับลดลงอย่างสวยงาม
ทั้งหมดนี้จะช่วยให้คุณสามารถเพิ่มผู้ให้บริการบุคคลที่สามใหม่ได้อย่างง่ายดาย
ปัญหาโทเค็น
โทเค็นมีเวลา จำกัด ดังนั้นคุณต้องใช้งาน cron สองสามชุดซึ่งสามารถตรวจสอบว่าโทเค็นนั้นยังใช้งานได้มิฉะนั้นคุณต้องลบมัน คุณยังสามารถรีเฟรชโทเค็นโดยกลไกนี้
บางครั้งมันเกิดขึ้นที่ผู้ใช้ถอนโทเค็น เตรียมพร้อมสำหรับสิ่งนี้
การจัดเก็บข้อมูล
หากคุณมีการออกแบบนี้คุณต้องคิดเกี่ยวกับข้อมูลที่คุณต้องการ ส่วนต่อไปนี้มาจากส่วนต่อประสานที่คุณเพิ่งสร้างขึ้น ออกแบบบางตารางสำหรับสิ่งนี้และดูว่าข้อมูลสามารถเรียกคืนได้จริงหรือไม่ บริการบางอย่างไม่อนุญาตให้คุณรับข้อมูลจำนวนมาก คุณควรคำนึงถึงว่ายิ่งคุณต้องการข้อมูลมากเท่าใดยิ่งมีความเป็นส่วนตัวยิ่งขึ้น ดังนั้นจงสุภาพในความต้องการของคุณมิฉะนั้นผู้ใช้จะไม่ใช้มัน
สำหรับการตรวจสอบเพิ่มเติมคุณสามารถจัดเก็บโปรไฟล์ในตารางแยกต่างหาก แต่เชื่อมโยงกับผู้ใช้ของคุณ สิ่งนี้จะช่วยให้คุณได้ข้อมูลเพิ่มเติมเกี่ยวกับใครบางคน
ตรวจสอบกฎหมายท้องถิ่นของคุณสำหรับข้อมูลบางอย่างที่คุณต้องการความระมัดระวังเป็นพิเศษ
สิ่งสุดท้าย
อย่าทำผิดที่คุณไม่ได้สร้างบัญชีในบริการของคุณเอง หากผู้ใช้ถูกแบนจาก facebook เขาจะไม่สามารถลงชื่อเข้าใช้บริการของคุณได้อย่างมีประสิทธิภาพ นี่คือสถานการณ์ที่คุณไม่ต้องการสร้าง สิ่งนี้มักถูกมองข้าม