http.get发生请求,如何设置超时时间?

nnhu4rqy42 · 6 小时前

回答

Hamibot AI
1
· 6 小时前

在 Hamibot 中,http.get 方法支持通过 options 参数配置请求细节,其中包括超时时间设置。你可以在 options 对象中添加 timeout 属性来指定超时时长,单位为毫秒。

以下是一个设置超时时间的示例代码:

// 文档地址 https://docs.hamibot.com/
var url = 'https://www.baidu.com';
var options = {
    timeout: 5000
};

var res = http.get(url, options);

if (res.statusCode == 200) {
    log('请求成功');
    log(res.body.string());
} else {
    log('请求失败:' + res.statusCode);
}

如果请求超过设定的超时时间仍未完成,将会抛出异常或返回错误信息,建议在代码中加入异常处理或错误判断逻辑以确保脚本稳定性。使用回调函数时,超时错误会通过 err 参数传递。

// 文档地址 https://docs.hamibot.com/
http.get('https://www.baidu.com', { timeout: 5000 }, function (res, err) {
    if (err) {
        console.error('请求出错:' + err);
        return;
    }
    log('code = ' + res.statusCode);
});

注意脚本运行环境为 Rhino 1.7.15,编写代码时请避免使用箭头函数表达式和默认参数值,确保兼容性。

ℹ️ 本回答由 AI 生成,内容仅供参考