gpt4 book ai didi

node.js - 使用 node-markdown 模块渲染 markdown 时输出不一致

转载 作者:太空宇宙 更新时间:2023-11-04 02:43:31 25 4
gpt4 key购买 nike

我正在尝试在 express 中编写一个 Controller ,它接受一些 Markdown 并返回一些用于论坛帖子的 HTML。

我在命令行中得到了预期的行为:

> var md = require('node-markdown').Markdown;
undefined
> md("\n\ndon't mind me\n====")
'<h1>don\'t mind me</h1>'

但是如果我收到一个 HTTP POST 请求,根据 Chrome 的说法,该请求具有以下表单数据

raw:\n\ndon't mind me\n====

我收到此回复:

<p>\n\ndon't mind me\n====</p>

无法正确识别 H1 标记。

以下是解析 markdown 的代码:

var md = require('node-markdown').Markdown;

var parseMarkdown = (function () {
return function (raw_md) {
return md(raw_md);
}
}());

这是我的 Controller 代码:

app.post('/render_markdown', function (req, res) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Content-Type', 'application/json');
var raw = req.body['raw'];
res.send({ html: parseMarkdown(raw)});
});

有人知道这里可能发生什么吗?在将输入传递到 Markdown 函数时,我尝试过摆弄转义和取消转义,但似乎没有帮助。

最佳答案

我认为您需要发送一个包含 json 的字符串,而不是响应中的实际对象。试试这个:

res.send(JSON.stringify({ html: parseMarkdown(raw)});

关于node.js - 使用 node-markdown 模块渲染 markdown 时输出不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10266209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com