2014-10-28 66 views
0

我想改寫這個捲曲腳本紅寶石如何編寫使用SSL版本= TLS POST請求,我所以SSL_connect SYSCALL返回= 5錯誤號= 0

其中用POST通過SSL

把一些數據到服務器
curl -k https://<SERVER_ADDR>:443/ -i \ 
    -H "Accept: application/json" \ 
    -H "Content-Type:application/json" \ 
    -X POST -d @${1} https://<SERVER_ADDR>:443/service/ 

這個捲曲腳本的作品,但下面的ruby腳本不起作用。

我用剩下的客戶端庫https://github.com/rest-client/rest-client

我得到了錯誤#<OpenSSL::SSL::SSLError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A>

header = { 
    "Accept" => " application/json", 
    "Content-Type" => "application/json" 
} 

    resp = RestClient.post(server_url, content, header) 

我怎麼能rewrit用Ruby版本捲曲?

回答

1

RestClient默認爲SSLv3,出於安全原因,您不應該使用它。要改變的東西稍微更現代:

RestClient::Resource.new('https://<SERVER_ADDRESS>:443/service', :ssl_version => 'TLSv1').post(:json_key => "json_value") 
+0

謝謝,但我沒有看到這個記錄在GitHub上read.me..https的任何地方://github.com/rest-client/rest-client你確定它是否有效? – bjm88 2016-01-21 03:32:57

相關問題