http的timeout

dgiij
291

http模块提供的get post的调用方式是

http.get(url[, options, callback])
http.post(url, data[, options, callback])

如果不加回调参数,则请求将阻塞、同步地执行。
阻塞式的,如果能连上服务器,那么调用成功或失败会很快返回,如果目标没有反应,等待时间可能要50秒左右
网上搜了下autojs似乎有下面的调用,可以设置同步调用时timeout时间

http.__okhttp__.setTimeout(ms);

写在脚本里,代码没有报错,不过没有被正确执行
那么可以采用异步方式,定义callback函数,将出错或者返回值更新到变量中,然后在http语句后面加上一句sleep(ms),休眠一段时间,然后检查相关变量,这样实现比timeout效果差一些,因为timeout是最长等待时间,服务器有反应的话,会很快返回的

发布于 2023-04-07
更新于 2023-04-07
好文需要鼓励,点赞获取更新通知