/ /なぜ.Net WebClientは設定なしでHTTPSを使用できるのに対し、Java HttpClientではjava、.net、https、webclient、apache-httpclient-4.xはできません

なぜ.Net WebClientは設定なしでHTTPSを使用できるのに対し、Java HttpClientではjava、.net、https、webclient、apache-httpclient-4.xはできません

驚くことはありませんが、私の質問は何かがうまくいかないことではありません.Net WebClientが設定なしですぐにHTTPSを使用できる理由は何ですか?

本当に私はApache HttpClientを使ってHTTPSを使ったPOSTと全く同じ操作を行っていましたが、不平を言っていました。

HttpClientを悩ましたのは、サーバーTLS証明書が不明です。 正当な苦情なので、私が使用していたJRE証明書ストアに証明書を追加した後、すべてが期待どおりに機能しました。

まず、あなたは恐ろしい疑念を取り除くことができます:WebClientはHTTPSを正しく使用しています。もし私が "https://downloadspywaresandmalwares.com"それはあなたのようなもので私を拒否する必要があります"あなたは狂った男ですか、これは信頼できる場所ではありません! "

だから私はこれが分岐することと関係していると思います.NetとJavaのセキュリティポリシー:おそらくJavaは独自の証明書と権限をバンドルしていますが、.Netはより多くの信頼できる証明書を持つOSに統合されています。

どうすればこれらの前提をすべて確認できますか?

それは重要なことができる場合:私はクロムからWebサイトを使用しているが、IEから決して使用していないので、WebClientはIEの設定を使用していない。

どのような入力をありがとう。 :)

回答:

回答№1は1

私は最終的にそれを得たと思う:

  • 私が疑うように .Netには独自の証明書ストアはありませんが、OSストアを使用します
  • 私は証明書を見つけて削除することができましたが、これは簡単ではありません。 Windowsはいくつかの証明書を維持するために戦っている その店で
  • 一旦削除されると、期待通りに、WebClientは壊れており、SSL / TLSセキュアチャネルの信頼関係を確立できませんでした"
  • そう、はい WebClientがSSLを正しく使用する、それは安心です:)

うまくいけば、この情報は誰かのために役立つだろう...