request
モジュールを使用してhttps
呼び出しを行おうとしています。以下は、現在の既存のオプションです。
そして私はpfx
ファイルとpassword
を持っています。
strictSSL: false,
rejectUnauthorized: false,
agent: false
誰かがすべてをtrueに設定する必要があることについて私を助けてくれますか、そして私はcert
ファイルをエクスポートする必要がありますか?
可能であれば、このためのopenssl
コマンドを共有してください。
cert
をエクスポートして$# strictSSL and rejectUnauthorized true
$を作成しようとしましたが、次のようなエラーが表示されます。
message: 'Error: unable to verify the first certificate'
ノードバージョンは6.9.2
です
設定してみましたかprocess.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0'
@rpgeeganageこれは推奨される方法ではありません。
完全なエラースタック
{ Error: unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1085:38)
at emitNone (events.js:86:13)
at TLSSocket.emit (events.js:185:7)
at TLSSocket._finishInit (_tls_wrap.js:603:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:433:38) code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE' } 'error'
私もこの問題に遭遇しました。 @ tomalex0の回避策を見つけましたか?
これに関する更新はありますか?
私もこの問題に遭遇しました。
回避策として、SSL証明書が有効である必要があるという要件を無効にし、完全にバイパスします。 「strictSSL:false」を次のように追加します。
{
url: "https://...",
method: "POST",
headers: {
"Content-Type": "application/json"},
strictSSL: false
}
私のサーバーはプライベートネットワーク(インターネットアクセスなし)にあり、そこで動作するはずです。証明書に署名し、独自のCAで信頼しています... ca.pemファイルを追加しても、 UNABLE_TO_VERIFY_LEAF_SIGNATURE
エラーが発生します。 options.agentOptions.caに。 strictSSLオプションやその他の安全でないオプションを無効にせずに、このエラーを明らかに修正するにはどうすればよいですか?
私の場合、LetsEncryptで生成したSSL証明書は、ノードhttpsライブラリまたはリクエストライブラリで正常に機能します。 ただし、ポート443から同じ証明書を使用すると(システムのGolangコンポーネントから正常に動作し、Chromeで正常に動作します)、ノードのhttpsライブラリとリクエストライブラリが完全にチョークされ、両方とも同じエラーが発生します。 私はまだここで何が問題になっているのかを理解しようとしていますが、少なくともこの場合、これらのルートCAハックは機能していないようです。
この問題は、最近のアクティビティがないため、自動的に古いものとしてマークされています。それ以上のアクティビティが発生しない場合は閉じられます。貢献していただきありがとうございます。
誰もそれを閉じて、決して起こらないふりをする人はいないのですか?
私のURLはすべてのブラウザで正常に機能していますが、「request.js」では機能していません
同じエラーが発生していました。 strictSSLをfalseとしてマークすることで修正され、以下のコードが機能しました。
var client = new RestClient({
繋がり: {
pfx:fs.readFileSync(certFile)、
パスフレーズ:certPassword、
strictSSL:false、
requireUnauthorized:false、
エージェント:false
}
});
APIにノードレストクライアントアーキテクチャを使用しています。
これが同様の修正を探している人に役立つことを願っています
これを試して:
var request = require( "request")。defaults({rejectUnauthorized:false});
最も参考になるコメント
回避策として、SSL証明書が有効である必要があるという要件を無効にし、完全にバイパスします。 「strictSSL:false」を次のように追加します。