2009-08-03 13 views
46

का उपयोग करता है, मैं जावास्क्रिप्ट का उपयोग करने वाला ऐप बनाने की योजना बना रहा हूं और इसे वेबसाइट के लिए उपयोगकर्ता प्रमाणीकृत करने के लिए OAuth का उपयोग करने की आवश्यकता है। क्या कोई मेरी मदद कर सकता है? कोई नमूना कोड? मैं गूगल कोड जावास्क्रिप्ट OAuth पुस्तकालय के बारे में पता है, लेकिन मुझे यकीन है कि लागू करने के लिए कैसे नहीं कर रहा हूँ ..एप्लिकेशन जो OAuth और जावास्क्रिप्ट

उत्तर

51

OAuth यहाँ के लिए एक जे एस ग्राहक कार्यान्वयन नहीं है: http://oauth.googlecode.com/svn/code/javascript/

यह आप चलाने के लिए उदाहरण कोड शामिल हैं। असल में, तुम क्या यह है:

var url = "..."; 
var accessor = { 
    token: "...", 
    tokenSecret: "...", 
    consumerKey : "...", 
    consumerSecret: "..." 
}; 

var message = { 
    action: url, 
    method: "GET", 
    parameters: {...} 
}; 

OAuth.completeRequest(message, accessor);   
OAuth.SignatureMethod.sign(message, accessor); 
url = url + '?' + OAuth.formEncode(message.parameters); 

// send request to 'url' 
... 

चीयर्स, मथायस

+38

मुझे लगता है कि tokenSecret और consumerSekret मापदंडों गुप्त होना चाहिए रहे हैं! ब्राउजर पर डाउनलोड होने पर वे गुप्त कैसे रह सकते हैं? !!! उदाहरण के लिए, एसएसएल का उपयोग करके – Meysam

+1

। लेकिन, हाँ, ब्राउज़र वातावरण में ओएथ निश्चित रूप से सुरक्षा समस्याओं पर संदेह करता है। – Matthias

+0

यह ओएथ 1.0 ए या 2.0 के लिए है? – IsmailS

11

उल्लेख सुरक्षा समस्याओं YQL के माध्यम से हल किया जा सकता: http://derek.io/blog/2010/how-to-secure-oauth-in-javascript/

+1

कोड को जल्दी से पकड़ें। लेकिन फिर आप किसी और की बैकएंड तकनीक पर अपने या किसी के बजाय भरोसा करते हैं - जो मूल लक्ष्य था। – WrongAboutMostThings

0

आप एक Firefox (या अन्य मोज़िला) में लिख रहे हैं एडन, oauthorizer पर विचार करें। मैं goo.gl लाइट के latest version के लिए इसका उपयोग कर रहा हूं। हालांकि, मैंने मोज़िला ऐड-ऑन साइट के लिए अनुमोदित कुछ मुद्दों को मारा, जिसे मैं वर्तमान में काम कर रहा हूं।

3

मैंने एक सामान्य ओएथ 2.0 जावास्क्रिप्ट लाइब्रेरी लिखी है।

+0

क्या आप एक कस्टम Google ऐप इंजन एप्लिकेशन को प्रमाणीकृत करने का उदाहरण पोस्ट कर सकते हैं? मैं इसके साथ 2 दिनों के लिए संघर्ष कर रहा हूं। आपकी लाइब्रेरी 3 कॉलबैक यूआरएल, 'OAuthGetRequestToken',' OAuthAuthorizeToken' और 'OAuthGetAccessToken' का समर्थन नहीं करती है? –