Powershell v3のInvoke-WebRequestとInvoke-RestMethodを使用するPOSTメソッドを正常に使用して、jsonファイルをhttpsウェブサイトに投稿しました。
私が使用しているコマンドは
$cert=New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("cert.crt")
Invoke-WebRequest -Uri https://IPADDRESS/resource -Credential $cred -certificate $cert -Body $json -ContentType application/json -Method POST
ただし、次のようなGETメソッドを使用しようとすると、
Invoke-WebRequest -Uri https://IPADDRESS/resource -Credential $cred -certificate $cert -Method GET
次のエラーが返されます
Invoke-RestMethod : The underlying connection was closed: An unexpected error occurred on a send.
At line:8 char:11
+ $output = Invoke-RestMethod -Uri https://IPADDRESS/resource -Credential $cred
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
次のコードを使用してSSL証明書を無視しようとしましたが、実際に何が行われているかはわかりません。
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
誰かがここで何が問題になっているのか、そしてそれをどのように修正するのかについてのガイダンスを提供できますか?
ありがとう
Invoke-WebRequest : The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
ためです。詳細については、$ Error [0] .Exception.InnerExceptionを調べてみてください。 。
Invoke-RestMethod
またはInvoke-WebRequest
?