Ale*_*vin 10 ruby ruby-on-rails oauth-2.0
OAuth2 :: AccessToken.post()方法在文档中指定如下:
(对象)post(path,opts = {},&block)
我试图传递一些论点,但似乎我做错了:
response = token.post('/oauth/create.js', {:title => "title", :description => "desc"})
Run Code Online (Sandbox Code Playgroud)
参数永远不会达到方法,值总是为零.那么,使用post方法和参数的正确方法是什么?什么是&块?
我也得到了警告:无法验证CSRF令牌的真实性.这也可能导致问题.案例是我在应用程序外部使用OAuth api.OAuth 2通过Doorkeeper gem实现.
更新:在我定义范围后,CSRF警告现在消失了.此外,我设法通过提供url的一部分来使用带有参数的post()方法:"?title = test&...".仍然很高兴知道如何使用此方法记录.
POST或PUT中的主体可通过选项主体参数访问.没有这方面的文件.不得不查看oauth客户端代码本身来发现这个:
你的例子,正确的身体将是:
response = token.post('/oauth/create.js', {body: {:title => "title", :description => "desc"}})
Run Code Online (Sandbox Code Playgroud)
小智 4
您可以使用块传递参数来发布请求:
token.post('/oauth/create.js') do |request|
request.params['title'] = "something"
end
Run Code Online (Sandbox Code Playgroud)
OAuth2 gem 使用法拉第,该request对象是法拉第请求,因此您可能需要检查其他随请求传递参数的方法
法拉第宝石 => https://github.com/lostisland/faraday
| 归档时间: |
|
| 查看次数: |
5121 次 |
| 最近记录: |