ต่อจากตอนที่แล้วครับ เมื่อเรารู้จักกับ Graph API อย่างคร่าวๆ แล้วคราวนี้เรามาลองเรียกข้อมูลกันจริงๆเลยดกว่าครับ จากตอนที่แล้วถ้าจำกันได้ เมื่อเราลองเล่น Graph Explorer เราจะเห็นว่าจะต้องมีการขอสิทธิ์ในการเข้าถึงข้อมูล ก่อนอื่นกันเลยถ้ายังจำแอปที่เขียนให้โพสหน้าวอลได้ ให้ดึงโค้ดนั้นมาเลยครับ

แต่เนื่องจากโค้ดนั้นผมยังเขียนอย่างลวกๆ มาเขียนกันต่ออีกสักนิดนะครับเพื่อให้ดูสมบูรณ์ยิ่งขึ้น


สามารถดูโค้ดเต็มได้ที่นี่ 

มาอธิบายโค้ดกันหน่อยดีกว่าครับ ก่อนอื่นเลยที่บรรทัด 44 จะเห็นคำว่า read_stream ครับ นั่นคือ สิทธิที่เราขอเข้าถึงข้อมูลจาก เฟสบุ๊คนะครับ ว่าเราขอสิทธิเข้าถึงหน้าวอล ถ้าอยากรู้ว่ามีสิทธิ์อะไรให้ขอบ้างเข้าไปดูที่ Graph Explorer ครับ


(ภาพ ตัวอย่างสิทธิที่สามารถเข้าถึงได้สามารดูได้จาก Graph Explorer )

หลังจากนั้นผมได้เพิ่มโค้ดส่วนของ FB.getLoginStatus ใน FB.login นะครับเพื่อตรวจสอบว่าเรา login แล้วรึยัง หาก login แล้ว ให้ refresh หน้าครับ เพื่อให้แอปเรารันโค้ดที่ตรวจสอบการ login ในบรรทัดที่ 9 ครับ

เมื่อมาถึงบรรทัดที่ 9 จะเห็นว่ามีการเรียก FB.api โดยเรียกกราฟ ไปยัง ขอบ persmission เพื่อดูว่าตอนนี้ คนใช้ให้สิทธิอะไรแก่แอปบ้าง แล้วก็ตรวจสอบว่ามีสิทธิที่เราต้องการครบหรือไม่ หาก ครบ ให้รันหน้าแอปต่อไป แต่ถ้าไม่ ให้ขึ้นหน้า login ใหม่ ที่ผมทำแบบนี้เพื่อป้องกันผู้ใช้ login มาจากแอปอื่น ที่อยู่ในบล็อกเดียวกันเพราะจะทำให้แอปของเราเอ๋อเนื่องจาก เรียกข้อมูลไปแต่โดนปฏิเสธ

ขอจบตอนนี้ไว้ก่อนนะครับ จริงๆผมต้องการจะสอนในส่วนให้ซ่อนแสดงหน้า login กับหน้าเรียกแอปต่อ แต่เพิ่งนึกได้ว่ายังไม่ได้สอนให้คนในบล็อกนี้ รู้จักกับการติดตั้ง library ลงบนบล็อกเลย เดี๋ยวแอปมันจะทำงานไม่ได้จึงขอพักไว้ก่อนครับ


08 กันยายน 2557

คลังบทความ