在浏览器中请求https://aka.ms/win32-x64-user-stable时,它将返回此文件名“ VSCodeUserSetup-x64-1.27.2.exe”进行保存。
我想获取相同的信息“ VSCodeUserSetup-x64-1.27.2.exe”,所以我尝试了以下操作:
$webRequest = [net.WebRequest]::Create("https://aka.ms/win32-x64-user-stable")
$test = $webrequest.GetResponse()
但是我遇到了错误:
“使用” 0“参数调用” GetResponse“的异常:”基础连接已关闭:发送中发生意外错误。“
是正确的方法还是其他方法?
我不明白为什么,因为我遵循了https://learn-powershell.net/2011/02/11/using-powershell-to-query-web-site-information/,并且没有为GetResponse提供arg。
我可以通过执行以下操作来重现该问题:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls11
$webRequest = [net.WebRequest]::Create("https://aka.ms/win32-x64-user-stable")
$test = $webrequest.GetResponse()
因此,可以肯定地说这是TLS问题。您可以通过运行以下命令检查TLS版本:
[Net.ServicePointManager]::SecurityProtocol
并尝试按照以下方式设置TLS版本:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$webRequest = [net.WebRequest]::Create("https://aka.ms/win32-x64-user-stable")
$test = $webrequest.GetResponse()
示例(TLS 1.1):
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls11
Write-host "TLS Version: $([Net.ServicePointManager]::SecurityProtocol)"
$webRequest = [net.WebRequest]::Create("https://aka.ms/win32-x64-user-stable")
$webRequest.GetResponse()
TLS Version: Tls11
Exception calling "GetResponse" with "0" argument(s): "The underlying connection was closed: An unexpected error occurred on a send."
At line:4 char:1
+ $webRequest.GetResponse()
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
范例(TLS 1.2):
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Write-host "TLS Version: $([Net.ServicePointManager]::SecurityProtocol)"
$webRequest = [net.WebRequest]::Create("https://aka.ms/win32-x64-user-stable")
$webRequest.GetResponse()
TLS Version: Tls12
IsMutuallyAuthenticated : False
Cookies : {}
Headers : {Content-MD5, X-Cache, x-ms-blob-type, x-ms-lease-status...}
SupportsHeaders : True
ContentLength : 45189424
ContentEncoding :
ContentType : application/x-msdownload
CharacterSet :
Server : ECAcc (lha/8DA7)
LastModified : 12/09/2018 17:38:17
StatusCode : OK
StatusDescription : OK
ProtocolVersion : 1.1
ResponseUri : https://az764295.vo.msecnd.net/stable/f46c4c469d6e6d8c46f268d1553c5dc4b475840f/VSCodeUserSetup-x64-1.27.2.exe
Method : GET
IsFromCache : False
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句