Node.js res.setheader不是_respond的函数

时间:2018-02-19 15:17:48

标签: node.js

在为node.js创建帮助函数时出现以下错误。当我没有在helpersFunction.js中时,它工作得很好。如何在Node.js中正确设置帮助函数?

  

TypeError:res.setheader不是函数       at _respond(/Users/camdixon/Sites/node/node_api2/helperFunctions.js:8:7)       在Object.module.exports.success(/Users/camdixon/Sites/node/node_api2/helperFunctions.js:15:3)       at /Users/camdixon/Sites/node/node_api2/routes.js:14:13       在Layer.handle [as handle_request](/Users/camdixon/Sites/node/node_api2/node_modules/express/lib/router/layer.js:95:5)       在下一个(/Users/camdixon/Sites/node/node_api2/node_modules/express/lib/router/route.js:137:13)

helperFunctions.js文件

function _respond(res, next, status, data, http_code) {
  var response = {
    'status': status,
    'data': data
  };

  res.setheader('content-type', 'application/json');
  res.writeHead(http_code);
  res.end(JSON.stringify(response));
  return next();
}

module.exports.success = function(res, next, data) {
  _respond(res, next, 'OK', data, 200);
}

module.exports.failure = function(res, next, data, http_code) {
  _respond(res, next, 'Error', data, http_code);
}

我的Routes.js文件

var helpers = require('./helperFunctions.js');

module.exports = function (app) {

  var list = {}

  app.post('/list/create', function(req, res, next) {
    list = req.body.email_address;
    console.log(list);

    helpers.success(res, next, list);
  });

};

1 个答案:

答案 0 :(得分:1)

如果你看看堆栈跟踪,你会注意到你有错字;该方法称为setHeader而不是setheader。