2017-09-25 11 views
0

私は数日間このことを理解しようとしていましたが、私はアイデアがありません。私はPOST要求をローカルで実行中のアプリケーションの別のインスタンスにする次のコードを持っています。間違ったステータス行を受け取る:POSTリクエスト時に「HTTP/1.1 1カスタム」

HTTP要求は、次のコードによって初期化されています。私は、上記を実行すると、私は次のエラーを取得する

http_client = Net::HTTP.new(0.0.0.0, 1344) 
http_client.use_ssl = true 
http_client.verify_mode = OpenSSL::SSL::VERIFY_NONE 

request = Net::HTTP::Post.new("/some-path/?#some=params", {'Content-Type' => 'application/json'}) 
request.set_form_data(options[:post_data]) if options[:post_data] 
request.body = options[:request_body] if options[:request_body] 

response = http_client.request(request) 

#<Net::HTTPBadResponse: wrong status line: "HTTP/1.1 1 CUSTOM"> 

はそのを見ると、問題が由来見えましたhttp_client.request(request)のヘッダーにはいくつか問題があります。私はresponse.to_hash.inspectを記録してデバッグしようとしましたが、上記の検査を実行する前に例外をスローすることができません。

私はいくつかしましたGoogling、それは私がしたuse_ssl = trueを持っている必要があると述べた。まだ同じエラーが発生しています。

urlはローカルで実行しているので0.0.0.0です。1344はポートです。

答えて

0

https/sslを使用している間は、エンコードを使用する必要があります。これを試してください:

uri = URI.encode("/some-path/?#some=params") 
request = Net::HTTP::Post.new(uri, {'Content-Type' => 'application/json'}) 
+0

まだ同じ例外が発生しています – theGreenCabbage

関連する問題