Node.js 无法重置标头时出错

Node.js 无法重置标头时出错,node.js,Node.js,我有一个名为server.js的主文件,其中有一个post方法来调用url请求 var goToOther = require('./goToOther.js'); app.post ('/goToOther/', function (req, res) { var data = { "Error": 1, "Zone" "" }; sms.goToOther (req, res, msgsms; }); 我还有另一个文件名为goToOther goToOther.

我有一个名为server.js的主文件,其中有一个post方法来调用url请求

var goToOther = require('./goToOther.js');

app.post ('/goToOther/', function (req, res) {
var data = {
    "Error": 1,
    "Zone" ""
};
    sms.goToOther (req, res, msgsms;

});
我还有另一个文件名为goToOther goToOther.js

出口,后藤

therUrl = function (req, res, next, msgsms) {
    var data = {
        "Error": 1,
        "Sms": ""
    };

var url = "http://www.google.com.br";


req.redirect ({
    uri: url,
    method: "POST"
}, Function (error, response, body) {
    console.log (error);
    //console.log(body);
    date ["error"] = 0;
    date ["sms"] = "successfully sent";
    res.json (data);
    next ();

});

};
我读了一些关于它的文章,但不明白发生了什么,并且多次重做了我在他们之间读到的内容。我试图重新创建一个新的post方法,该方法发送调用url,但继续给出无法重置标题的错误。错误基本上是这样的:错误:发送头后无法设置

at ServerResponse.OutgoingMessage.setHeader 
Can't set headers after they are sent.

在goToOther.js中,您需要执行以下操作: 您需要创建其他变量来创建请求。 这就是我所做和工作的

var request = require('request');
exports.envioSMS = function (req, res) {

    var url = "http://www.google.com";

    request ({
        uri: url,
        method: "POST"
    }, function (error, response, body) {
};

envioSMS是中间件吗?如果下一个参数是,那么它在哪里?问题似乎不仅仅是由您提供的代码引起的,这个问题的根源是链条上更远的地方。我怎么不知道下一个参数用于什么,我就不使用它了。谢谢现在我将在所有函数中添加这个。