我正在使用节点模块'request'向我的REST API发送一些JSON。
我有以下电话
request({
uri: urlToUse, // Using the url constructed above.
method: "POST", // POSTing to the URI
body: JSON.stringify(jsonItems),
headers: // Allows us to authenticate.
{
'Content-Type' : 'application/json',
'Authorization' : auth
}},
//What to do after the request...
function(err, response, body)
{
// Was there an error?
if (err)
{
// If so, log it.
console.log(err);
}
// Did the server respond?
if (response)
{
// Log it.
console.log(response.statusCode);
// Did the response have a body?
if(body)
{
// Log it.
console.log(body);
}
}
});
我想补充一点 - 我希望能够对429状态代码执行操作 - 以便在完成之前重试请求。
我知道如何检测429(使用if语句来检查response.statusCode等),但我不知道如何重试,或者甚至是最好的方法。
答案 0 :(得分:0)
在我看来,你想要做的只是将所有这些代码包装在一个函数中,然后让它自己调用,如果响应代码是429.也许甚至包括一个"尝试尝试"数字作为此功能的最后一个可选参数,您可以计算您调用它的次数,并根据您的偏好采取相应行动