我正在尝试编写一个控制器,express
它需要一些降价并返回一些用于论坛帖子的 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);
}
}());
这是我的控制器代码:
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 函数时,我尝试过转义和取消转义,但似乎没有帮助。