首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Invoke-WebRequest设置超时

Invoke-WebRequest设置超时
EN

Stack Overflow用户
提问于 2015-12-07 22:36:13
回答 3查看 31.2K关注 0票数 23

我有一个长期运行的网页,我需要Powershell来调用它。我每晚从任务管理器中运行它,如下所示:

代码语言:javascript
复制
powershell -Command "Invoke-WebRequest https://www.example.com/longrunningtask" 

但是powershell超时发生在网站响应之前。有没有办法将Invoke-WebRequest上的超时设置为比标准的60秒更长?

EN

回答 3

Stack Overflow用户

发布于 2015-12-07 22:54:01

在调用Invoke-WebRequest cmdlet时,应该有一个可以向其提供整数值的-TimeoutSec参数。

代码语言:javascript
复制
Invoke-WebRequest https://www.example.com/longrunningtask -TimeoutSec 60
票数 28
EN

Stack Overflow用户

发布于 2015-12-08 01:25:17

您可以通过设置静态ServicePointManager.MaxServicePointIdleTime属性来解决超时问题。默认值为100000ms (100秒):

代码语言:javascript
复制
# Bump it up to 180 seconds (3 minutes)
[System.Net.ServicePointManager]::MaxServicePointIdleTime = 180000

# Now run your Invoke-WebRequest after making the change

ServicePointManager的更改仅适用于当前的应用程序域,并且不会持续到会话之后(即,您需要在每次运行脚本时执行此操作)

票数 2
EN

Stack Overflow用户

发布于 2020-03-12 16:27:30

下面是我已经成功尝试过的命令,让powershell发出一个包含“与”符号的web请求:

""http://localhost/index.php?option=val1""&""view=val2""&""key=val3""&""profile=2""“-Command "Invoke-WebRequest powershell -TimeoutSec 600

请注意添加的双引号,希望它对需要从命令行执行web请求的人有所帮助:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34136088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档