1

これまでのところ、これは私が思いついたものです。

RestClient.proxy = ENV("http_proxy")
RestClient.head("Cookie","accessToken=#{@GottenTokenString}") #this line not working
resp = RestClient.get("http://someServer/path/RestAPIPage.json",{:params => {:count => @count, :userCount => @userCount}})

ここでの問題は、getリクエストにヘッダーを追加できないように見えることです。私が呼び出しているAPIでは、トークンを取得してCookieヘッダーに設定する必要があります。RESTAPIはこれを処理できないようです。

これをRESTCLIENTgemを使用することにした理由は、NET::HTTP.getがクエリの追加を許可するメソッドの使用を許可していないためです。要約すると、RESTCLIENTでヘッダーを追加することはできません。しかし、NET::HTTPでクエリを追加することはできません。

私は本当に困惑しています。

4

2 に答える 2

1

同様の状況で私は行きました:

session = RestClient::Resource.new "url"
response = session.post("", :Cookie => @cookie_variable)

または、それはまっすぐでした:

RestClient.get(url, :Cookie => @cookie_variable)

head構文が機能することはありませんでした。

于 2012-03-04T20:56:14.840 に答える
1

古い質問ですが、同じことで苦労したので、参照用に.02を追加しています...

私の場合、GET リクエストのヘッダーにトークンを渡し、パラメーターも追加したいと考えていました。トリックは、param のようにヘッダーを含めることでしたが、params ハッシュには含めません。"Authorization" => "Bearer #{token}" は、私の例のヘッダー情報です。

require 'json'
require 'rest-client'

JSON.load(RestClient.get("http://yourUrlGoesHere.com", {"Authorization" => "Bearer #{token}", :params => {:foo => 'bar'}}))
于 2014-08-13T03:30:14.497 に答える