1

已解决(见下文)

我正在尝试创建一个 API,以便我可以读取文本(来自 word 文档)并让 botpress 中的机器人响应该文本的一部分。

我对几件事感到困惑:

  1. 我的 API 应该遵循什么结构(函数应该进入什么文件以及如何连接它们,或者,我可以将函数放入主 app.js 文件中)

  2. 我如何调用该 word 文档的我想要的部分,以便机器人可以用它来响应?

如您所见,我可以调用数组中的不同元素(这样做{{session.response.0}},机器人将使用TonyOn enter 或{{session.response.1}} "Lisa".

app.js我的 api 结构中只有一个文件,但没有其他文件。这是我的 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);
    });

这是我的操作文件(也就是调用/链接 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()

已解决 的编辑:找到一个文本阅读器( https://github.com/dbashford/textract

4

1 回答 1

0

使用“文本”文档阅读器:https ://github.com/dbashford/textract

于 2019-08-22T19:10:12.873 回答