[英]How use dialogflow-fulfillment-nodejs with Express
I want use dialogflow fulfillment library into Express 我想使用dialogflow实现库进入Express
This is my code: 这是我的代码:
import * as express from 'express';
import * as bodyParser from 'body-parser';
import * as dialogflowController from './controllers/dialogflow';
const app: express.Application = express();
app.use(bodyParser.json());
app.post('/echo', dialogflowController.doActions);
const http = require('http');
const httpServer = http.createServer(app);
httpServer.listen(80, function () { // ascolta sulla porta 80 per comando: ngrok http 80
console.log('HTTP Started!');
});
// dialogflowController controller unit
import { Request, Response, NextFunction } from 'express';
const { WebhookClient, Card, Suggestion } = require('dialogflow-fulfillment');
export let doActions = (req: Request, res: Response, next: NextFunction) => {
console.log('here it works');
const agent = new WebhookClient({ req, res });
console.log('crashes to the previous line');
};
And this is the error 这就是错误
Error: Request can NOT be empty.
[Node] at new WebhookClient (D:\Progetti\node_modules\dialogflow-fulfillment\src\dialogflow-fulfillment.js:58:13)
[Node] at exports.doActions (D:\Progetti\dist\controllers\dialogflow.js:14:19)
[Node] at Layer.handle [as handle_request] (D:\Progetti\node_modules\express\lib\router\layer.js:95:5)
Can you help me? 你能帮助我吗? How can I use the dialogflow-fulfillment-nodejs library with Express?
如何在Express中使用dialogflow-fulfillment-nodejs库?
The WebhookClient
constructor takes an option object with fields request
and response
. WebhookClient
构造函数接受带有字段request
和response
的选项对象。 You named them req
and res
. 你把它们命名为
req
和res
。
The constructor line should look something like this given the parameters you have to doActions()
: 在给定
doActions()
参数的情况下,构造函数行看起来应该是这样的:
const agent = new WebhookClient({
request: req,
response: res
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.