2010-05-03 22 views
8

के माध्यम से अपना खुद का डेटा पुनर्प्राप्त करना मैं एक कॉमेडी समूह के लिए एक वेबसाइट तैयार कर रहा हूं जो फेसबुक को उनके मार्केटिंग प्लेटफ़ॉर्म के रूप में उपयोग करता है; नई साइट के लिए आवश्यकताओं में से एक कैलेंडर पर अपने सभी फेसबुक कार्यक्रमों को प्रदर्शित करना है।फेसबुक एपीआई

वर्तमान में, मैं सिर्फ एक पायथन स्क्रिप्ट को एक साथ रखने की कोशिश कर रहा हूं जो मेरे सभी दोस्तों की सूची की तरह मेरे अपने फेसबुक खाते से कुछ डेटा खींच सकता है। मुझे लगता है कि एक बार मैं इसे पूरा कर सकता हूं, मैं अपने ग्राहकों के खाते से अधिक जटिल डेटा खींचने के लिए आगे बढ़ सकता हूं (क्योंकि उन्होंने मुझे अपने खाते तक पहुंच दी है)।

मैंने यहां कई पोस्ट देखी हैं, और फेसबुक कनेक्ट सहित फेसबुक एपीआई दस्तावेज के माध्यम से भी जाना है, लेकिन वास्तव में दीवार के खिलाफ मेरा सिर मार रहा हूं। जो कुछ भी मैंने पढ़ा है, वह ओवरकिल जैसा लगता है, क्योंकि इसमें मेरे ऐप को किसी भी मनमानी उपयोगकर्ता के खाते (जो मुझे अधिकृत करता है) से कनेक्शन स्थापित करने की अनुमति देने के लिए बुनियादी ढांचे का एक अच्छा सौदा स्थापित करना शामिल है। क्या यह बहुत आसान नहीं होना चाहिए, क्या मुझे केवल 1 खाते तक पहुंचने की आवश्यकता है?

मुझे फेसबुक लॉगिन विंडो प्रदर्शित किए बिना डेटा पुनर्प्राप्त करने का कोई तरीका नहीं मिल रहा है। मेरे पास एक स्क्रिप्ट है जो मेरे सभी दोस्तों को पुनर्प्राप्त करेगी, लेकिन इसमें एक रीडायरेक्ट शामिल है जहां मुझे अपने आप को फेसबुक पर शारीरिक रूप से लॉग इन करना होगा।

किसी भी सलाह या लिंक की सराहना करेंगे, मुझे लगता है कि मुझे कुछ आसान याद आना चाहिए।

धन्यवाद!

उत्तर

2

यह सच है कि फेसबुक की एपीआई उन डेवलपर्स पर लक्षित है जो ऐप्स बना रहे हैं जिनका उपयोग कई उपयोगकर्ताओं द्वारा किया जाएगा।

शुक्र है, नया ग्राफ एपीआई अपने पूर्ववर्ती की तुलना में उपयोग करने के लिए बहुत आसान है, और बिना अंतर्निहित बुनियादी ढांचे का उपयोग किए या बिना काम करने के लिए आपके लिए काम करना बहुत कठिन नहीं होना चाहिए।

आप प्राधिकरण को लागू करने की आवश्यकता है, लेकिन यह मुश्किल नहीं है, और जब तक आप ऑफ़लाइन_एसीएएस अनुमति के लिए उपयोगकर्ता को संकेत देते हैं, तो इसे केवल एक बार करने की आवश्यकता होगी।

Desktop Authentication पर प्रलेखन शायद इस बिंदु पर आपके लिए सबसे प्रासंगिक होगा, हालांकि आप वेब ऐप अप और चलने के बाद जावास्क्रिप्ट-आधारित प्रमाणीकरण में स्थानांतरित करना चाहते हैं।

एक बार प्रमाणीकरण पूरा हो जाने के बाद, आप जो कुछ कर रहे हैं वह विभिन्न यूआरएल के लिए अनुरोध कर रहा है और परिणामी JSON के साथ काम कर रहा है।

यहां घटनाओं के बारे में प्रलेखन है, और आप User के दोस्तों के कनेक्शन से दोस्तों की एक सूची प्राप्त कर सकते हैं।

+0

धन्यवाद, डैनियल और हर कोई, मैं आज रात आपके द्वारा पोस्ट किए गए लिंक को देखकर, ऑफ़लाइन_एसीएएस अनुमति को अधिकृत करने और अधिकृत करने के लिए समय बिताने जा रहा हूं। यदि कोई और इस प्रश्न की खोज करता है तो मैं जो कुछ ढूंढता हूं उस पर मैं फिर से पोस्ट करूंगा। फिर से धन्यवाद! – goggin13

0

मैं फेसबुक/फेसबुक कनेक्ट पर विशेषज्ञ नहीं हूं, हालांकि मैंने इसे इसके साथ उपयोग/उपयोग किए गए अनुप्रयोगों को देखा है और ऐसा लगता है कि ऐसा करने के लिए वास्तव में केवल 'आधिकारिक' तरीका है। मुझे डर है कि ऐसा लगता है कि आपकी सबसे अच्छी शर्त शायद इस तरह के साथ कुछ होगी।

http://wiki.developers.facebook.com/index.php/Connect/Authentication_and_Authorization

कैसे आप वास्तव में 'उपयोग' यह, आप अभी भी खाते से कनेक्ट करने के लिए आवेदन अधिकृत करना होगा की परवाह किए बिना और यह एक फेसबुक अनुप्रयोग के साथ-साथ होने का मतलब है।

0

फेसबुक एप्लिकेशन प्रमाणीकरण का उत्तर खोजना मुश्किल है लेकिन वास्तव में ग्राफ एपीआई के "Analytics" पृष्ठ में पाया जाता है। निम्न निर्दिष्ट करें: https://graph.facebook.com/oauth/access_token?client_cred&client_id=yourappid&client_secret=yourappsecret, तब आपको एक एक्सेस_टोकन दिया जाएगा जिसे आप अन्य सभी कॉलों पर उपयोग कर सकते हैं।

फेसबुक प्रदान किए गए एपीआई वर्तमान में कार्यक्षमता के इस स्तर को प्रदान नहीं करते हैं।

7

सफल सलाह पर बस मेरे नोट्स पोस्ट करना, दूसरों को यह पोस्ट मिलना चाहिए;

प्रति डैनियल और विलियम की सलाह के अनुसार, मैंने कनेक्ट विकल्पों का उपयोग करके सही अनुमतियां प्राप्त कीं। विलियम से, इस लिंक बताते हैं कि कैसे फेसबुक कनेक्शन काम करता है

https://developers.facebook.com/docs/authentication/

इस अनुभाग की स्थापना वास्तविक प्रमाणीकरण मेरे लिए सबसे मददगार था पर। http://developers.facebook.com/docs/api

असल में, यह निम्नानुसार है: निम्न यूआरएल के लिए एक लिंक पोस्ट करें। उपयोगकर्ता को भौतिक रूप से उस पर क्लिक करने की आवश्यकता होगी (भले ही वह उपयोगकर्ता सिर्फ आप ही साइट व्यवस्थापक हो)। https://graph.facebook.com/oauth/authorize?client_id=YOUR_CLIENT_ID&redirect_uri=http://www.example.com/HANDLER

यह एक फेसबुक लॉगिन पर रीडायरेक्ट करेगा, जो उपयोगकर्ता प्रमाणीकरण के बाद http://www.example.com/HANDLER पर वापस आ जाएगा। यदि आप मूलभूत पाठ और समाचार फ़ीड अपडेट से अधिक करना चाहते हैं तो आपको उपरोक्त लिंक में इस चर को शामिल करने की आवश्यकता होगी: scope = offline_access, user_photos। स्कोप वैरिएबल में केवल मानों की अल्पविराम से अलग सूची शामिल है, जो फेसबुक लॉगिन प्रक्रिया के दौरान प्रमाणीकृत उपयोगकर्ता को स्पष्ट रूप से बताएगा, और उन्हें ठीक करना होगा। मेरे लिए सबसे उपयोगी मेरे लिए ऑफ़लाइन_एक्सएसी ध्वज था (user_photos आपको अपनी तस्वीरों पर भी जाने देता है), इसलिए मैं नियमित रूप से लॉग इन किए बिना सामग्री खींच सकता हूं (जब तक मैं बाद में एक्सेस टोकन संग्रहीत करता हूं)

पर एक स्क्रिप्ट स्थित है http://www.example.com/HANDLER जो अनुरोध से एक चर लेगा (इसलिए फेसबुक प्रमाणीकरण के बाद http://www.example.com/HANDLER&code=YOUR_CODE पर रीडायरेक्ट करेगा)। आपके हैंडलर को कोड वैरिएबल खींचने की आवश्यकता है, और उसके बाद निम्न अनुरोध भेजें: https://graph.facebook.com/oauth/access_token?
client_id = YOUR_CLIENT_ID &
redirect_uri = http://www.example.com/oauth_redirect&
client_secret = YOUR_SECRET_KEY &
कोड = YOUR_CODE

यह अनुरोध फॉर्म ACCESS_TOKEN = YOUR_ACCESS_TOKEN की एक स्ट्रिंग वापस आ जाएगी।

बस बंद पार्स 'ACCESS_TOKEN =', और आप एक टोकन है कि आप यह अपने सभी मित्रों से युक्त एक JSON ऑब्जेक्ट वापस आ जाएगी http://graph.facebook.com/me/friends?access_token=YOUR_ACCESS_TOKEN की तरह, फेसबुक ग्राफ एपीआई का उपयोग करने के अनुरोध में उपयोग कर सकते हैं

उम्मीद है कि यह किसी और को दस्तावेज के माध्यम से कुछ मजेदार समय नहीं बचाता है। सहायता के लिए धन्यवाद!

संबंधित मुद्दे