首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >处理MSXML超时

处理MSXML超时
EN

Stack Overflow用户
提问于 2019-10-08 15:02:02
回答 1查看 140关注 0票数 1

我们的一个网站有一个小故障,偶尔会把它弄坏-后端需要重新启动。替换还没有准备好生产,所以我创建了一个VBS脚本,它轮询服务器并在以下情况下重新启动服务器:

( a) HTTP代码<> 200,或b)页面加载,但在页面上找不到子字符串。

如果tomcat服务没有响应,HTTP状态检查就会超时;如果发生这种情况,我想调用一个函数。是否有可能捕获和处理超时?这是我相关代码片段的片段。

代码语言:javascript
复制
xmlhttp.setOption 2, 13056
xmlhttp.open "get", "https://www.mywebsite.com/thisurl", false
xmlhttp.send

if xmlhttp.status <> 200 then
    call restartTomcat()
    call emailAlert()
end if

提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-08 15:29:15

不幸的是,您无法在VBScript中创建对象事件处理程序。

也许您可以使用HTTP对象的.setTimeouts resolveTimeout, connectTimeout, sendTimeout, receiveTimeout方法。在调用send方法之前添加此内容。以下是参数的描述:

resolveTimeout

一个长整数。该值被应用于将主机名(例如"www.microsoft.com")映射到IP地址;默认值是无限的,意味着没有超时。

connectTimeout

一个长整数。该值应用于与目标服务器建立通信套接字,默认超时值为60秒。

sendTimeout

一个长整数。该值适用于将通信套接字上的单个请求数据分组(如果有的话)发送到目标服务器。发送给服务器的大型请求通常会被分解为多个数据包;发送超时适用于单独发送每个数据包。默认值是30秒。

receiveTimeout

一个长整数。该值适用于从目标服务器接收响应数据分组。大型响应将被分解为多个数据包;接收超时适用于从套接字获取每个数据包。默认值是30秒。

您可以在send调用之后检查当前的状态。这将帮助您处理没有响应的服务器。

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

https://stackoverflow.com/questions/58289071

复制
相关文章

相似问题

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