gpt4 book ai didi

Powershell - 增加从 URL 检索 XML 的超时

转载 作者:行者123 更新时间:2023-12-02 22:26:12 25 4
gpt4 key购买 nike

我正在尝试从 URL 检索 XML 流。对于大多数 URL,我下面的代码可以正常工作。但是,我有几个超时的 URL。相关 URL可以在 Internet Explorer 中使用。

$webclient=New-Object "System.Net.WebClient"
[xml]$data=$webclient.DownloadString($url)

因此,我开始寻找一种增加超时时间的方法。根据我所读到的内容,我相信我无法使用 System.Net.WebClient 来做到这一点。我想我需要使用 System.Net.WebRequest 来代替,但我无法让它工作。我一直在编写的代码如下:

$myHttpWebRequest = [system.net.WebRequest]::Create($url)
$myHttpWebRequest.Timeout = 600000
$myHttpWebResponse = $myHttpWebRequest.GetResponse()
$sr = New-Object System.IO.StreamReader($response.GetResponseStream())
[xml]$xml = [xml]$sr.ReadToEnd()

我尝试访问的网址是我公司的内部网址,因此我无法发布它们。但是,它们确实可以在 IE 中工作,并且实际的 URL 应该是无关紧要的。

想法?

编辑:初步测试表明添加 $myHttpWebRequest.AuthenticationLevel = "None" 有效。谢谢斯科特·萨德。

最佳答案

默认情况下,WebRequest.AuthenticationLevel 设置为 MutualAuthRequested,因此它将等待某种类型的身份验证响应。因此,在等待身份验证发生时可能会超出超时。看起来您并没有弄乱凭证,因此除非您需要身份验证,否则您可能不需要这个。创建 WebRequest 后尝试如下操作:

$myHttpWebRequest.AuthenticationLevel = "None"

希望这有助于解决问题。

关于Powershell - 增加从 URL 检索 XML 的超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/209520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com