尽管成功回调,但 Express API 超时
Posted
技术标签:
【中文标题】尽管成功回调,但 Express API 超时【英文标题】:Express API timeout despite success callback 【发布时间】:2017-06-14 22:42:54 【问题描述】:我有一个快速 API:
var bodyParser = require("body-parser");
app.use(bodyParser.json());
app.post("/adapter/mail", function(request, response)
var body = request.body;
var id = body.id;
var params = id: id;
Parse.Cloud.run("email", params,
success: function(e)
console.log("api: success");
respone.status(200).send("e");
,
error: function(e)
console.log("api: error: " + JSON.stringify(e));
response.status(500).send(e);
);
);
调用 API 调用 Parse Cloud 代码:
Parse.Cloud.define("email", function(request, response)
console.log(JSON.stringify(request, null, 4));
response.success("ok");
);
在控制台中,我看到console.log("api: success");
被正确执行,但 API 请求并没有结束,尽管回调成功,它还是超时了。
当 Cloud Code 返回 response.error("error");
而不是 response.success("ok");
时,请求不会超时,而是立即结束。
为什么请求成功后会超时?
【问题讨论】:
您的代码中有一个错字respone.status(200).send("e");
在“响应”中缺少一个“s”。
@JulianGoacher 谢谢,解决了。花了我 1 小时,我想该睡觉了:-)
【参考方案1】:
您的回调中似乎缺少一个“s”
respon"s"e.status(200).send("e");
【讨论】:
以上是关于尽管成功回调,但 Express API 超时的主要内容,如果未能解决你的问题,请参考以下文章
PayPal Express Checkout API 回调
JEST:“在 jest.setTimeout 指定的 5000 毫秒超时内未调用异步回调。”,尽管它已经配置
尽管 Access-Control-Allow-Origin 设置为 express ,但请求标头字段 Authorization