Node.js Route.post()

时间:2019-02-26 15:21:11

标签: node.js function object npm callback

我正在编写一个Node.js应用程序,并试图在calls.js控制器内使用index.js文件中的函数。每当我添加

var IndexBot = require('/root/afstudeerwerk/chatbotPIROS/index');

对于我的calls.js文件,出现以下错误: 错误1:
error1

routes.js(/ root / afstudeerwerk / chatbotApi / api / routes):

'use strict';
module.exports = function(app) {
var chatbot = require('/root/afstudeerwerk/chatbotPIROS/calls');

app.post('/slack/receive',chatbot.create_a_message);
app.post('/DBcheck/:id',chatbot.checkUserAuth);
};

calls.js(/ root / afstudeerwerk / chatbotPIROS / calls)

'use strict';
exports.create_a_message = function(req, res) {
var IndexBot = require('/root/afstudeerwerk/chatbotPIROS/index');
var message = req.body;

var button = JSON.parse(message.payload).actions[0].value

if(button == 'MeanMakeVM'){
        res.json({message:'Please enter your VM specs.'});
        IndexBot.stuur_bot_bericht('dit is een testbericht.');
}

1 个答案:

答案 0 :(得分:0)

您的控制器中缺少在路由文件文件中为其指定了路由的任何方法。

在路线文件中,您有一条路线app.post('/DBcheck/:id',chatbot.checkUserAuth);,但在calls.js中却没有任何名为checkUserAuth的函数,这就是为什么会给您错误。

在调用文件中创建一个名为checkUserAuth的方法,您的错误将得到解决