1

RestClient 経由でサーバーにアクセスできません。

私はこのコードをcURLで書いています(解析のためにXMLファイルをサーバーに送信します)

curl -T /Users/amok/Code/1188/dragon/test.xml --cert Users/amok/Code/1188/dragon/client_1188.pem --key Users/amok/Code/1188/dragon/client_1188.key -k -u 1188:aaa https://smart.com/index.cgi

RestClient でも同じようにする必要があります。私はこれを試しましたが、うまくいきません。

return RestClient::Resource.new(
  'https://smart.com/index.cgi',
  :ssl_client_cert  =>  OpenSSL::X509::Certificate.new(File.read(File.join(Rails.root, "/cert/client_1188.pem"))),
  :ssl_client_key   =>  OpenSSL::PKey::RSA.new(File.read(File.join(Rails.root, "/cert/client_1188.key"))),
  :user => '1188', 
  :password => 'aaa'
).post(xml, :content_type => 'application/xml')

(xml はファイルで、サーバーに保存されます)

問題は:

OpenSSL::SSL::SSLError in BackOffice::DragonPilotController#create
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

今、手のひらが私の顔に乗っています... ((( ありがとう

4

1 に答える 1

1

POSTの代わりにPUTメソッドを使用する

于 2012-06-19T10:51:02.470 に答える