Powershell Net.HttpWebRequest返回" Getresponse with 0 arguments"

时间:2015-03-27 14:36:01

标签: powershell powershell-v3.0

我有一个小脚本可以检索网站SSL的到期日期。

这是代码:

[Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
$timeoutMilliseconds = 10000
$req = $null
$req = [Net.HttpWebRequest]::Create("https://google.com")
$req.Timeout = $timeoutMilliseconds
$req.GetResponse();
$expiration = $req.ServicePoint.Certificate.GetExpirationDateString()
$expiration

在抛出“带有0个参数的Getresponse”之前,这个工作正好两次(!)。 如果我重新打开powershell,它将再次正常工作2次。 我不确定这里发生了什么......

1 个答案:

答案 0 :(得分:0)

我不确定为什么它会运行2次然后失败。但是,如果你添加

$req.Abort()

在您显示的代码段的最后一行之后,它每次都会有效。但要小心,如果该代码片段不完整,并且您在该片段之后使用$ req执行操作,则调用abort方法可能会导致抛出异常。