2016-09-14 24 views
0

私はRails 4.2.7を使用しています。 Net :: HTTP :: Postリクエストにヘッダーを追加するにはどうすればよいですか?私はこのコードを実行するときしかし、私はそれが送信される前に、オブジェクトにヘッダを追加したいエラーRubyでNet :: Http :: Postリクエストにヘッダーを追加するにはどうすればよいですか?

Error during processing: wrong number of arguments (given 3, expected 1..2) 
/Users/davea/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/request.rb:14:in `initialize' 
/Users/davea/Documents/workspace/myproject/app/services/marathon_guide_race_finder_service.rb:97:in `new' 
/Users/davea/Documents/workspace/myproject/app/services/marathon_guide_race_finder_service.rb:97:in `block in process_race_link' 
/Users/davea/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node_set.rb:187:in `block in each' 
/Users/davea/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node_set.rb:186:in `upto' 
/Users/davea/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node_set.rb:186:in `each' 

注意を得る

params = {"SubmitButton" => "View"} 
    … 
     headers = {"Referer" => url} 
     req = Net::HTTP::Post.new(uri, params.to_query, headers) 

を試してみました。

答えて

1

あなたは、ヘッダー

headers = {"Referer" => url} 
http  = Net::HTTP.new(uri.host) 
response = http.post(uri.path, params.to_query, headers) 
+0

おかげでポストを作成するためにインスタンスを使用することができますが、私はそれが送信される前に、オブジェクトにヘッダを追加したいです。 POSTリクエストオブジェクト自体にヘッダを追加するにはどうすればいいのですか?それは不可能ですか? – Dave

+0

上記のコードで 'http.post'を呼び出すと、ヘッダーが正しく添付されるまで要求は行われません。 –

関連する問題