Удалить разметку HTML из текста в приложении-функции Azure
Я пишу простое приложение-функцию Azure, которое должно получить строку, содержащую разметку HTML, удалить теги HTML и вернуть "очищенный" текст.
Код будет очень простым, как
module.exports = async function (context, req) {
if (req.body) {
context.res = {
body: req.body.replace(... something)
};
}
};
Насколько я могу судить по SO, использование RegEx для этого является большой проблемой, но другие решения, которые я могу найти, основаны на DOM (работа над document
объект, как добавление DIV с req.body
содержание в нем и получать чистый текст из этого.
Но в моей функции Azure DOM мне недоступен (поскольку браузер не выполняет запрос.
Так какие у меня варианты?
1 ответ
В интересах других, сталкивающихся с этим, как упоминали Карлос и Критен, вы можете использовать один из множества npm
модули доступны для санации текста.
Что касается добавления этих зависимостей (см. Документы), вы можете
Работая локально, просто
npm install
что нужно и при использованииfunc
развернуть, это будет включать в себяnode_modules
тоже. Это поможет с холодным запуском, поскольку он запускает пакет как есть. То же самое относится и при использованииdocker
на основе развертывания тоже по умолчаниюDockerfile
,Использование Kudu, как упомянуто в той теме, которой вы поделились. Но не рекомендовал бы это, так как это то, что вы всегда должны делать при изменении зависимостей.