2010-07-30 69 views
0

我正在使用的API是hereRESTClient实现对Ruby与smarkets.com API - 卷曲RESTClient实现

我可以登录罚款,并取回一个身份验证令牌,但无法弄清楚如何做任何需要令牌的事情。当我尝试获取或发布私人网址时,我收到禁止的回复。

他们给需要使用要发送的请求的例子卷曲:

卷曲\ --header '授权:USERLOGIN令牌= “kk5lvKJG1FohVbS3kcHllyTshdcBKX4FpFAKFnx_Eh0IYYpXN3Hg6HZLceXuYt7V52mCcdUk5i_GUMc〜”' \ -X POST \ 'https://api.smarkets.com/v1/users/renew'

我的问题是:如何使用Ruby中的RestClient库发送等效请求?我有一种感觉,我弄乱了标题,因为RestClient中的标题都是{:key =>'value'}对,我不明白这将如何转化为示例中给出的标题。

回答

2

在HTTP请求中,头是由:分隔的键/值对,所以你需要发送的头对是:

:authorization => 'UserLogin token="kk5lvKJG1FohVbS3kcHllyTshdcBKX4FpFAKFnx_Eh0IYYpXN3Hg6HZLceXuYt7V52mCcdUk5i_GUMc~"' 

所以,重现你在你的例子给出的要求:

RestClient.post 'https://api.smarkets.com/v1/users/renew', '', :authorization => 'UserLogin token="kk5lvKJG1FohVbS3kcHllyTshdcBKX4FpFAKFnx_Eh0IYYpXN3Hg6HZLceXuYt7V52mCcdUk5i_GUMc~"' 
+0

工作。谢谢。 – 2010-08-02 19:13:16