0

我正在编写一个简单的 Azure 函数应用程序,它应该接收包含 HTML 标记的字符串,删除 HTML 标记并返回“净化”文本。

代码会很简单,比如

module.exports = async function (context, req) {
    if (req.body) {
        context.res = {
            body: req.body.replace(... something)
        };
    }
};

据我在 SO 上看到的,使用 RegEx 来做这件事是一个很大的不可行,但我能找到的其他解决方案都是基于 DOM(处理document对象,比如添加一个包含req.body内容的 DIV它并从中获取干净的文本。

但是在我的 Azure 函数中,我无法使用 DOM(因为没有浏览器执行请求。

那么我的选择是什么?

4

1 回答 1

1

为了其他遇到此问题的人的利益,例如 Carlos 和 Kryten 提到的,您可以使用许多npm可用于清理文本的模块之一。

至于添加这些依赖项(请参阅docs),您可以

  1. 在本地工作时,npm install正是您需要的以及func用于部署时,它也将包括在内node_modules。这将有助于冷启动,因为它按原样运行包。当使用基于默认docker的部署Dockerfile时,这同样适用。

  2. 使用您共享的SO 线程中提到的 Kudu 。不建议这样做,因为它是您在依赖项更改时总是需要做的事情。

于 2019-05-13T11:00:00.707 回答