Visual Studio を使用して、HTTPS 経由でサーバーにデータを投稿したいと考えています。ブラウザでその URL にアクセスすると、サーバーはその身元を確認する証明書を (SSL プロトコル上の HTTP の一部として) 送り返すことを知っています。VS 経由でサーバーに投稿する際に問題が発生しています (Web 例外が発生します)。これは、証明書がないためだと思います。システム管理者から、ロードする必要があると思われる証明書がメールで送られてきました。プロパティに移動すると->署名->ファイルから選択->証明書を選択すると、VSがエラーをスローします"The selected file does not contain a private key. You must choose a certificate that contains a private key."
サーバーからの証明書には秘密鍵がなく、検証済みの公開鍵しかないと思われるため、このエラー メッセージは混乱を招きます。予期しないエラー メッセージが表示されるので、証明書を正しく読み込んでいないと思われます。正しく読み込んでいますか? もしそうなら、なぜVSは秘密鍵を期待していると言っているのですか?
VS経由で投稿するコードは次のとおりです
Using client As New Net.WebClient
Dim uploadThis As String = some string
client.UploadString(uploadThis, "POST", uploadThis)
End Using