创建一个 API 来读取文本并使用它
Creating an API that reads text in and uses it
已解决(见下文)
我正在尝试创建一个 API 以便我可以阅读文本(来自 word 文档)并让 botpress 中的机器人响应该文本的一部分。
我对一些事情感到困惑:
我的 API 应该遵循什么结构(函数应该进入什么文件,我如何连接它们,或者,我可以把函数放在 main app.js 文件)
如何调用该 word 文档中我想要的部分,以便机器人可以响应它?
如您所见,我可以调用数组中的不同元素(执行 {{session.response.0}}
并且机器人将在输入时响应 Tony
或 {{session.response.1}} "Lisa"
。
我的 api 结构中只有一个 app.js
文件,没有其他文件。
这是我的 api 文件 (app.js)
var express = require("express");
var fs = require('fs');
var app = express();
var port = process.env.PORT || 3002;
app.get("/url", (req, res, next) =>{
res.json(["Tony", "Lisa", "Michael","Ginger","Food"]);
});
fs.readFile('/home/user/Desktop/test/doc.html', 'utf8', function(err, contents) {
res.json(contents);
});
app.listen(port, () => {
console.log("Server running on port: " + port);
});
这是我的动作文件(也就是 calls/links api 用来 botpress 的东西):
const axios = require('axios')
/**
* @title testApi
* @category Test
* @author test
*/
const testApi = async () => {
// We call the test API
const { data } = await axios.get('http://localhost:3002/url/')
// We assign the response to the session variable so we can use it later
session.response = data
}
// Actions are async, so make sure to return a promise
return testApi()
已解决
编辑:找到一个文本 READER (https://github.com/dbashford/textract)
使用了 'textract' 文档 reader: https://github.com/dbashford/textract
已解决(见下文)
我正在尝试创建一个 API 以便我可以阅读文本(来自 word 文档)并让 botpress 中的机器人响应该文本的一部分。
我对一些事情感到困惑:
我的 API 应该遵循什么结构(函数应该进入什么文件,我如何连接它们,或者,我可以把函数放在 main app.js 文件)
如何调用该 word 文档中我想要的部分,以便机器人可以响应它?
如您所见,我可以调用数组中的不同元素(执行 {{session.response.0}}
并且机器人将在输入时响应 Tony
或 {{session.response.1}} "Lisa"
。
我的 api 结构中只有一个 app.js
文件,没有其他文件。
这是我的 api 文件 (app.js)
var express = require("express");
var fs = require('fs');
var app = express();
var port = process.env.PORT || 3002;
app.get("/url", (req, res, next) =>{
res.json(["Tony", "Lisa", "Michael","Ginger","Food"]);
});
fs.readFile('/home/user/Desktop/test/doc.html', 'utf8', function(err, contents) {
res.json(contents);
});
app.listen(port, () => {
console.log("Server running on port: " + port);
});
这是我的动作文件(也就是 calls/links api 用来 botpress 的东西):
const axios = require('axios')
/**
* @title testApi
* @category Test
* @author test
*/
const testApi = async () => {
// We call the test API
const { data } = await axios.get('http://localhost:3002/url/')
// We assign the response to the session variable so we can use it later
session.response = data
}
// Actions are async, so make sure to return a promise
return testApi()
已解决 编辑:找到一个文本 READER (https://github.com/dbashford/textract)
使用了 'textract' 文档 reader: https://github.com/dbashford/textract