2016-09-29 21 views
0

私はAPIエンドポイントにヒットしてJSONを送信するルビテストコードをいくつか持っています。`Errno :: ECONNRESET:リモートホストによって既存の接続が強制的に閉じられました。 - SSL_connect`

RestClient.post(url, json, :content_type => :json, :accept => :json) { |response, request, result| 
    @last_response = response 
} 

時々、このエラーが発生することがあります。

Errno::ECONNRESET: An existing connection was forcibly closed by the remote host. - SSL_connect 

何が起こっているのですか?

答えて

1

RESTCLIENT_LOG=stdout環境変数を設定することによって、あなたは、端末にRestClientデバッグデータが表示されます。または、stdoutをファイルパスに置き換えて、ログファイルに書き出すこともできます。

無効なSSL証明書または応答を返す前に接続が切断される単なるAPIエンドポイントである可能性があります。

1

このようなネットワークエラーのトラブルシューティングは難しい場合があります。それが維持されていれば、Wiresharkまたはtcpdumpを使ってネットワークトラフィックをキャプチャすることができます。これにより、何が起きているのかを把握できます。一般ECONNRESET

は通常、あなたは、クライアントがまだそれへの送信のためにキューに入れたデータを持っていながら、リモートサーバーが接続を閉じたことを意味します。

関連する問題