restify 中正确的 http post 响应应该是什么?

What should a proper http post response be in restify?

我正在使用 node.js restify。

我有一个看起来像这样的 HTTP Post 处理程序;

var api_post_records = function (app, url_path) {
    function post_handler(req, res, next) {
    //code runs here
    res.send("ok"); //have to run some response back, otherwise python http post requests will hang
    app.post(url_path, post_handler);
}

如果我删除 res.send("ok"); 行,它将导致 python http post 请求挂起。我不知道为什么。希望有人能提供答案。我必须发送一些虚拟 HTTP 响应,以免挂起 python 请求。尽管当前代码有效,但我想知道如果 HTTP post 正常工作,正确的 HTTP 响应应该是什么。

除非我遗漏了什么,否则这是一些非常不标准的 restify 代码。另外,这与Python无关。如果您注释掉 res.send() 方法,任何请求都应该失败,因为这是发送响应的方法。您还忘记调用 next()。另外,为什么要在 post_handler 中递归注册 post_handler?

这通常是您的代码的结构:

var restify = require('restify');
var server = restify.createServer();

var post_handler = function(req, res, next){
    res.send('ok');
    next();
}

server.post(url_path, post_handler);

server.listen(8000);