2009-12-10 10 views
29

मैं सोच रहा था कि पॉपअप के माध्यम से ट्विटर ओएथ कैसे करें, यानी पॉपअप में ओथ पेज को लोड करें और कॉलबैक को बच्चे विंडो बंद करें और पैरेंट विंडो को फिर से लोड करें।एक पॉपअप के माध्यम से ट्विटर ओएथ

संपादित करें: ठीक है iframes खराब हैं, लेकिन आप उपरोक्त कैसे पूरा करेंगे, मुझे लगता है कि posterous.com ऐसा करता है - मैं एफबी कनेक्ट के समान प्रवाह प्राप्त करने के लिए देख रहा हूं।

उत्तर

61

आज याहू के लिए एक ही बात कर रहा ... प्रमाणीकरण के लिए ट्विटर को

  1. खुला एक पॉपअप
  2. संदेश उपयोगकर्ता
  3. ट्विटर mysite.com/authcompleted वापस करने के लिए उपयोगकर्ता भेजता है क्वेरी स्ट्रिंग में प्रमाणीकरण पैरामीटर के साथ .php। अभी भी पॉपअप में।
  4. पॉपअप (mysite.com/authcompleted.html) क्वेरी स्ट्रिंग पढ़ता है और जावास्क्रिप्ट

    window.opener.setTwitterAuthData (yourData)

  5. अंदर setTwitterAuthData, के माध्यम से सलामी बल्लेबाज खिड़की करने के लिए डेटा भेजता है जो आपकी मुख्य विंडो में है, उपयुक्त फॉर्म फ़ील्ड सेट करें और डेटा को अपने सर्वर पर सबमिट करें।

+0

पर pecl oauth dll पा सकते हैं आप अभी भी पॉपअप, पॉइंट 3 में कैसे हो सकते हैं, जब कॉलबैक mysite.com/authcompleted है। php? – Owen

+1

@mark आप पॉपअप को याहू से शुरू करने के लिए इंगित करते हैं, फिर याहू रीडायरेक्ट्स, अभी भी पॉपअप के अंदर, authcompleted.php – morgancodes

+0

धन्यवाद, – Owen

5

आपको यह नहीं करना चाहिए। इसे IFrame में लोड करना उपयोगकर्ता से यूआरएल को छुपाता है, जिससे यह पुष्टि करना मुश्किल हो जाता है कि वे twitter.com पर अपना पासवर्ड दर्ज कर रहे हैं, न कि तीसरे पक्ष (यानी फ़िशिंग) साइट पर।

+2

मैं सिद्धांत रूप से सहमत हूं, लेकिन लेख पृष्ठ केवल अनुमति नहीं देता है || इस एप्लिकेशन बटन से इनकार करें - यह आपको आपके पासवर्ड के लिए नहीं पूछता है। इसलिए मैं नहीं देख सकता कि यूएक्स प्रवाह की सहायता करते समय, सुरक्षा परिप्रेक्ष्य से यह समस्या क्यों होनी चाहिए। – MatthewFord

+4

यदि आप लॉग इन नहीं हैं तो यह आपको अपने पासवर्ड के लिए पूछता है। –

+3

गैर-लॉग इन पेज पर आईएसआरएएम बस्टिंग जेएस है जहां यह आपको आपके पासवर्ड के लिए पूछता है (लाइन 37) – MatthewFord

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

  • कोई संबंधित समस्या नहीं^_^