2012-03-26 16 views
5

के साथ साइनिंग अनुरोध python-oauth2 का गीथब पृष्ठ req = oauth.Request(...) के साथ हस्ताक्षरित अनुरोध बनाने पर निर्देश देता है, जो एक शब्दकोश पर हस्ताक्षर किए जा सकते हैं। लेकिन मैं वास्तव में इन अनुरोधों को कैसे भेजूं?python-oauth2

+0

क्या यह एक डुप्लिकेट है? http://stackoverflow.com/questions/2138656/signing-requests-in-python-for-oauth – Daenyth

+1

@ डेनथ: यह उस प्रश्न का डुप्लिकेट नहीं है। उस प्रश्न में हस्ताक्षर बनाने के लिए कस्टम पायथन कोड है, यह प्रश्न 'पायथन-ओथ 2' लाइब्रेरी का उपयोग कर रहा है। – abraham

+0

भी स्थानीयकृत? डब्ल्यूटीएफ – Jannis

उत्तर

1

रीडमे में अगले चरण को देखें।

ग्राहक

import oauth2 as oauth 

# Create your consumer with the proper key/secret. 
consumer = oauth.Consumer(key="your-twitter-consumer-key", 
    secret="your-twitter-consumer-secret") 

# Request token URL for Twitter. 
request_token_url = "http://twitter.com/oauth/request_token" 

# Create our client. 
client = oauth.Client(consumer) 

# The OAuth Client request works just like httplib2 for the most part. 
resp, content = client.request(request_token_url, "GET") 
print resp 
print content 
+1

मुझे लगता है कि मैं बेहद खराब दस्तावेज का शिकार हूं। मुझे नहीं लगता कि मुझे "हस्ताक्षर" अनुभाग की भी आवश्यकता है, जैसा कि क्लाइंट आपके उदाहरण में करता है, ओएथ सेवाओं के लिए पर्याप्त प्रतीत होता है। – Steve

4

का उपयोग करते हुए बस अंत में इस पंक्ति जोड़ें:

rs = urllib2.urlopen(req.to_url()) 

कहाँ req अपने अनुरोध वस्तु है।

+0

यह मेरे लिए काम नहीं करता है - यह सिर्फ यूआरएल को (हस्ताक्षरित) अनुरोध भेजता है। मुझे कुछ "खराब प्रमाणीकरण डेटा" संदेश मिल रहा है क्योंकि अनुरोध पर हस्ताक्षर नहीं है। – pcv

+2

दरअसल, दस्तावेज़ में टोकन पैरामीटर गुम हैं। होना चाहिए: क्लाइंट = oauth.Client (उपभोक्ता, टोकन); resp, सामग्री = client.request (यूआरएल, "प्राप्त करें") बीटीडब्ल्यू। यह प्रश्न क्यों बंद है? – pcv