"WinHttp.WinHttpRequest.5.1"を使用して、ExcelのVBAからHTTP POST要求を送信します。 しかし、私はSSL証明書のエラーを受け取ったので、HTTPSのためにそれをすることができませんでした。Excel用VBAを使用したHTTPS POST要求
ExcelのVBAからWebサイトへのSSL接続をネゴシエートするのにどのVBAコードを使用しますか?
"WinHttp.WinHttpRequest.5.1"を使用して、ExcelのVBAからHTTP POST要求を送信します。 しかし、私はSSL証明書のエラーを受け取ったので、HTTPSのためにそれをすることができませんでした。Excel用VBAを使用したHTTPS POST要求
ExcelのVBAからWebサイトへのSSL接続をネゴシエートするのにどのVBAコードを使用しますか?
WinHttpRequest目的は、SetClientCertificate方法を有しています。 (私はVBAのためにそれを適応させることを試みた)MSDNから取られたこのコード例を試してみてください。私は、COMコンポーネント(WinHttpRequest)を使用していないものの
' Instantiate a WinHttpRequest object. '
Dim HttpReq as new ActiveXObject("WinHttp.WinHttpRequest.5.1")
' Open an HTTP connection. '
HttpReq.Open("GET", "https://www.test.com/", false)
' Select a client certificate. '
HttpReq.SetClientCertificate("LOCAL_MACHINE\Personal\My Certificate")
' Send the HTTP Request. '
HttpReq.Send()
、あなたが前に送信呼び出しとSetClientCertificateへの呼び出しを必要とするようで、リンクごとに。
これは役に立ちますか?
私は同じ状況です(ExcelのVBAからhttpリクエストを送信します)。
certificate_data = txtobj.ReadAll
HttpReq.SetClientCertificate (certificate_content)
、
HttpReq.SetClientCertificate
にそれを渡すために、変数に証明書の内容を取得する - HTTPリクエストクラスの、そして
Set fsobj = CreateObject("Scripting.FileSystemObject")
Set txtobj = fso.OpenTextFile("C:\PKCERT.PEM")
-
Set HttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
:私は3つのオブジェクトを作成しました
公開鍵証明書を含むリクエストは、通常どおり、
HttpReq.Send
P.S.私はhttp://www.808.dk/?code-simplewinhttprequestにスクリプトを見つけました。私の場合はうまくいきました。
コードを投稿してください。また、 "WinHttp.WinHttpRequest.5.1"はCOMコンポーネントですか?それを見つけるためにどこですか? – shahkalpesh