2011-04-06 9 views
6

यह मुझे प्रलेखन से एक्स्ट्राप्रोलेशन कर सकता है (जो इसे व्यवस्थित करता है, यह करना मुश्किल नहीं है) लेकिन क्या फेसबुक ने डेवलपर्स को परीक्षण उपयोगकर्ताओं का निर्माण और उपयोग करने के लिए कुछ बड़े बदलाव किए हैं?क्या फेसबुक ने परीक्षण उपयोगकर्ता खातों के लिए अपनी प्रणाली बदल दी?

मेरी याद करने के लिए (और मैंने पिछले एक महीने पहले यह किया था), डेवलपर्स लॉग इन खाते में से एक यूआरएल में जाने में सक्षम होते थे जो उस उपयोगकर्ता को 'टेस्ट उपयोगकर्ता' में परिवर्तित कर देगा, जिसके पास नहीं था सार्वजनिक प्रणाली में विशेषाधिकार, लेकिन प्रकाशन, अनुमति प्राप्त करने आदि के लिए परीक्षण इकाई के रूप में कार्य कर सकते हैं। मेरे पास इस विधि के माध्यम से एक परीक्षण उपयोगकर्ता सेटअप था और डेटाबेस में सहेजे गए उसके लिए एक्सेस टोकन उत्पन्न किया था।

हाल ही में यह सब काम करना बंद कर दिया। मेरा पहला इंस्टीट्यूट मैंने बनाए गए फेसबुक ऑब्जेक्ट के गुणों को मुद्रित करना था, और जहां एक बार जेएसओएन डीकोडेड उपयोगकर्ता डेटा था, वहां अब कर्ल प्रक्रिया से अपवाद था जो/me/api endpoint तक पहुंच गया था।

फेसबुक GraphAPI - Uncaught EntCannotSeeExistenceException:

मान स्पष्ट रूप से मासूम की रक्षा करने के लिए बदल: इकाई (कक्षा EntTestUser) आईडी 12345 के द्वारा समर्थित वर्तमान दर्शक 12345 (12345 EntID) द्वारा नहीं देखा जा सकता है। उपयोगकर्ता आईडी समान थे, जिसने इस बात को अजीब बना दिया कि किसी भी कारण से आईडी 12345 रखने वाले उपयोगकर्ता को 12345

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

http://developers.facebook.com/blog/post/429

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

हमेशा के रूप में धन्यवाद।

+4

एफबी एपीआई को बदलना पसंद करता है और पीछे की संगतता के बारे में चिंता नहीं करता है – dogmatic69

+0

@ dogmatic69 निश्चित रूप से ऐसा लगता है! मैं बस यह निर्धारित करने की कोशिश कर रहा हूं कि मुझे पुरानी प्रणाली का त्याग करना चाहिए और मैं इन परीक्षण उपयोगकर्ताओं को नई विधि के माध्यम से बनाने के लिए कुछ समय समर्पित कर सकता हूं, क्योंकि हम अभी भी ऐप विकसित कर रहे हैं और मैं अभी तक सार्वजनिक पोस्ट नहीं चाहता हूं। – DeaconDesperado

+1

मैंने अभी भी एक ही समस्या को देखना शुरू कर दिया है, और मेरे सभी फेसबुक कनेक्ट यूनिट परीक्षण अब विफल हो रहे हैं। –

उत्तर

3

http://developers.facebook.com/blog/post/475

मैं प्रपत्र तोड़ने के लिए और अपने खुद के सवाल का जवाब देने से नफरत है, लेकिन टिप्पणी से काफी लोगों को इस समस्या हो रही होने लगते हैं।

आज डेवलपर अपडेट के माध्यम से खुदाई मैं अंत में ऊपर पोस्ट (पहले से ही लिखा समाधान होने, निश्चित रूप से) उद्धरित पाया:

हम यहाँ उल्लेख किया परीक्षण खाते में उपयोगकर्ता खातों बंद करने की क्षमता को हटा दिया है को रोकने के लिए वास्तविक के अनजाने रूपांतरण परीक्षण खातों में खाते हैं। परीक्षण खातों को बनाने का उचित तरीका ऐप ग्राफ़ ऑब्जेक्ट के खाते कनेक्शन का उपयोग करके है।

यह छोटी अधिसूचना मार्च के अपडेट के साथ मिश्रित की गई थी।शायद आरएसएस को उनके डेवलपर ब्लॉग चाहिए ताकि इन चीजों को फिर से सुराग न लें! यह विशेष अपडेट 4 मार्च को प्रभावी हो गया। किसी भी घटना में, स्रोत से सही निष्कर्ष निकालना अच्छा होता है।

+0

परीक्षण के लिए –

+0

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

+0

मुझे लगता है कि वे शायद सिस्टम क्लीनर रखना चाहते थे, क्योंकि ये नए खाते आत्म-सीमित हैं और समय के बाद हटा दिए जाते हैं। – DeaconDesperado

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