如何捕获服务器响应?

时间:2016-05-10 11:57:11

标签: node.js express webserver response

有一个客户端正在向我的网络服务器发送请求。此服务器应回答数据或特定代码,例如117 (是的,这是光环参考:D)现在我需要访问响应的数据或代码。我怎么能意识到这一点?我在stackoverflow找到了类似的东西,你可以帮忙。

客户端示例:

function sendRequest() {
        var options = {
            host: 'localhost',
            port: 1309,
            path: '/examplePath?param='+param,
            param: "example"
        };
        http.get(options, function(resp){
            resp.on('data', function(chunk){
                console.log("chunk :",chunk);
            });
        }).on("error", function(err){
            console.log("Error: " + err.message);
        });

}

应答服务器:

function examplePathFunction(req,res) {

    if(condition) {
        //TODO Server must answer with data
    } else {
        //TODO Server must answer with status 117
    }
}

会:res.end(date/code);解决我的问题吗?我该如何捕捉到这种反应?

1 个答案:

答案 0 :(得分:1)

我认为您正在寻找:

function examplePathFunction(req, res, next) {

if(req.body.data) {
    res.status(200).send({ data: req.body.data });
    return next();
 } else {
    res.status(117);
    return next();
   }
}

虽然如果您尝试通过params发送数据,请查看而不是请求正文。

详细了解Express API:http://expressjs.com/en/api.html#req