2012-04-26 11 views
10

OAuth2 :: AccessToken.post() विधि दस्तावेज में इस तरह निर्दिष्ट किया जाता है:रेल पर रूबी: OAuth2 :: AccessToken.post का उपयोग कैसे करें?

(वस्तु) पोस्ट (पथ, उससे ऑप्ट = {}, & ब्लॉक)

मैं कुछ तर्क पारित करने के लिए कोशिश कर रहा हूँ है, लेकिन लगता है * कि मैं इसे गलत कर हूँ:

response = token.post('/oauth/create.js', {:title => "title", :description => "desc"}) 

मापदंडों कभी नहीं विधि तक पहुंच रहे हैं, मानों हमेशा शून्य कर रहे हैं। तो, तर्क के साथ पोस्ट विधि का उपयोग करने का सही तरीका क्या है? और & ब्लॉक क्या है?

मुझे चेतावनी भी मिल रही है: सीएसआरएफ टोकन प्रामाणिकता को सत्यापित नहीं कर सकता। यह समस्या में भी योगदान दे सकता है। मामला यह है कि मैं ऐप के बाहर से ओथ एपीआई का उपयोग कर रहा हूं। OAuth 2 Doorkeeper मणि के माध्यम से लागू किया गया है।

अद्यतन: स्कॉप्स परिभाषित करने के बाद अब सीएसआरएफ चेतावनी समाप्त हो गई है। इसके अलावा मैं url के हिस्से के रूप में प्रदान करके तर्क के साथ इस पोस्ट() विधि का उपयोग करने का प्रबंधन करता हूं: "? Title = test & ..."। दस्तावेज के रूप में इस विधि का उपयोग कैसे करें, यह जानना अच्छा होगा। , request वस्तु, एक फैराडे अनुरोध है

token.post('/oauth/create.js') do |request| 
    request.params['title'] = "something" 
end 

OAuth2 मणि ​​फैराडे का उपयोग करता है ताकि आप के साथ पैरामीटर पास करने के अन्य तरीकों से जांच करना चाह सकते:

उत्तर

3

आप मापदंडों अनुरोध पोस्ट करने के लिए पारित करने के लिए ब्लॉक का उपयोग कर सकते अनुरोध

फैराडे मणि =>https://github.com/lostisland/faraday

9

एक पोस्ट में शरीर या PUT विकल्पों शरीर परम के माध्यम से पहुँचा जा सकता है। इस पर कोई दस्तावेज नहीं है। इस खोज के लिए OAuth क्लाइंट कोड अपने आप में देखने के लिए किया था:

https://github.com/intridea/oauth2/blob/ebe4be038ec14b3496827d29cb224235e1c9f468/lib/oauth2/client.rb

आपका उदाहरण

, सही शरीर के साथ होगा:

response = token.post('/oauth/create.js', {body: {:title => "title", :description => "desc"}}) 
+0

इस के लिए धन्यवाद! मेरे बेकन बचाया !! – Jim

+5

और यदि आपको हेडर की आपूर्ति करने की आवश्यकता है तो यह इस तरह दिखेगा: 'token.post ('/ some/url', {: body => json_str,: हेडर => {'सामग्री-प्रकार' => 'एप्लिकेशन/json '}}) ' –

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