2012-11-08 82 views
147

शुरुआती यहाँ प्रोग्रामर, अज्ञानता माफ कृपया & स्पष्टीकरण वास्तव में अच्छा :)एक पुनर्निर्देशन यूआरआई क्या है? OAuth2.0 के लिए आईओएस ऐप पर यह कैसे लागू होता है?

मैं एक निश्चित OAuth 2.0 सेवा के लिए ट्यूटोरियल पढ़ने के लिए कोशिश की है होगा, लेकिन मुझे समझ नहीं आता इस अनुप्रेषित यूआरआई ... में मेरे विशेष संदर्भ, मान लें कि मैं एक आईफोन ऐप बनाने की कोशिश कर रहा हूं जो कुछ सेवा के लिए ओएथ 2.0 का उपयोग करता है। मेरे पास एक ऐप आईडी उत्पन्न हुई है, लेकिन मुझे एपीआई कुंजी उत्पन्न करने के लिए कुछ प्रकार के रीडायरेक्ट यूआरआई प्रदान करने की आवश्यकता है।

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

हालांकि, अगर यह धारणा सही है, तो मुझे एक और बात समझ में नहीं आती है - उपयोगकर्ता लॉगिन के लिए ब्राउज़र पर उन्हें भेजने के बाद मेरा ऐप फिर से खोला जा सकता है?

उत्तर

168

इस पढ़ें:

http://www.quora.com/OAuth-2-0/How-does-OAuth-2-0-work

या एक भी सरल लेकिन त्वरित विवरण:

http://agileanswer.blogspot.se/2012/08/oauth-20-for-my-ninth-grader.html

अनुप्रेषित यूआरआई अनुप्रयोग के कॉलबैक प्रवेश बिंदु है। इस बारे में सोचें कि फेसबुक के लिए ओएथ कैसे काम करता है - अंत उपयोगकर्ता अनुमतियों को स्वीकार करने के बाद, ऐप पर वापस आने के लिए फेसबुक द्वारा "कुछ" कहलाता है, और "कुछ" रीडायरेक्ट यूआरआई है। इसके अलावा, रीडायरेक्ट यूआरआई ऐप के शुरुआती प्रवेश बिंदु से अलग होना चाहिए।

इस पहेली का अन्य मुख्य बिंदु यह है कि आप अपने ऐप को वेबव्यू पर दिए गए यूआरएल से लॉन्च कर सकते हैं।

http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html

और

http://inchoo.net/mobile-development/iphone-development/launching-application-via-url-scheme/

ध्यान दें: ऐसा करने के लिए, मैं बस यहाँ पर गाइड का पालन उन पिछले 2 लिंक पर, "http: //" मोबाइल खोलने में काम करता है सफारी लेकिन "tel: //" पहले अनुप्रयोग में सिम्युलेटर

में काम नहीं करता, मैं फोन

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"secondApp://"]]; 

मेरे दूसरे ऐप में, मैं यूआरएल पहचानकर्ता के रूप में अपनी कंपनी के साथ "दूसरा ऐप" (और नहीं "secondApp: //") यूआरएल योजना के नाम के रूप में पंजीकृत करता हूं।

+25

मैं वास्तव में आपको इस उत्तर को पाने के लिए समय देने की सराहना करता हूं! –

+1

तो, आपको redirect_uri में दी गई अपनी वेबसाइट स्थापित करने की आवश्यकता है, क्या यह सही है? – huggie

+1

@ huggie आईओएस ऐप्स के संदर्भ में - नहीं, सौभाग्य से, आपको अपनी वेबसाइट की आवश्यकता नहीं है। आपको बस यह समझने की आवश्यकता है कि वेब ब्राउज़र पर दिए गए यूआरएल से आपका आईओएस ऐप खोला जा सकता है। पढ़ें: http://iosdevelopertips.com/cocoa/launching-your-own-plication-via-a-custom-url-scheme.html –

6

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

1

यदि आप फेसबुक एसडीके का उपयोग कर रहे हैं, तो आपको फेसबुक के ऐप प्रबंधन पृष्ठ पर रीडायरेक्ट यूआरआई के लिए दर्ज करने के लिए खुद को परेशान करने की आवश्यकता नहीं है। बस अपने आईओएस ऐप के लिए यूआरएल योजना सेट करें। आपके ऐप की यूआरएल योजना एक मूल्य "fbxxxxxxxxxxx" होना चाहिए जहां xxxxxxxxxxx फेसबुक पर पहचाने जाने पर आपकी ऐप आईडी है। अपने आईओएस ऐप के लिए यूआरएल योजना सेट अप करने के लिए, अपनी ऐप सेटिंग्स के जानकारी टैब पर जाएं और यूआरएल प्रकार जोड़ें।

6

ओएथ 2.0 खेल का मैदान देखें। आपको प्रोटोकॉल का एक सिंहावलोकन मिलेगा। यह मूल रूप से एक पर्यावरण (किसी भी ऐप की तरह) है जो आपको प्रोटोकॉल में शामिल चरणों को दिखाता है।

https://developers.google.com/oauthplayground/