使用 nodejs 创建 REST API 以用于 contentBlocks (createjs.org)

Creating REST API using nodejs for use with contentBlocks (createjs.org)

我在这里的问题非常具体,但在如何设置与 contentBlocks NodeJS 插件 (https://github.com/primaryobjects/contentblocks) 一起使用的 REST 查找调用方面遇到困难。

我的 contentBlock 路径设置如下:

var contentBlocks = require('contentblocks')(
{ 
    app: app, 
    host: 'localhost', 
    pathFind: '/content/find?q={"@subject":"[id]"}',
    pathPost: '/content', 
    pathPut: '/content/[id]', 
    pathDelete: '/content/[id]' 
});

我的路线设置为:

router.get('/content/find?q={"@subject":"[id]"}', content.find);

映射到 content.js:

exports.find = function(req, res) {
    res.json("[]");
}

当我执行时,访问页面时一直出现以下错误:

GET /content/find?q={"@subject":"<homePage_description>"} 404 275.193 ms - 3986

undefined:1
<!DOCTYPE html><html><head><title></title><link rel="stylesheet" href="/styles
^
SyntaxError: Unexpected token <
    at Object.parse (native)
    at c:\dev\camsc\node_modules\contentblocks\lib\managers\WebManager.js:19:42
    at IncomingMessage.<anonymous> (c:\dev\camsc\node_modules\contentblocks\node_modules\e
asypost\lib\easypost.js:19:13)
    at IncomingMessage.emit (events.js:117:20)
    at _stream_readable.js:943:16
    at process._tickCallback (node.js:419:13)

而我的看法如下:

block content
    h1= title
    #homeContentBlock(about='homePage_description')
        div(property='content')
            p.
                Some text here...

我认为问题出在正在传递的查找请求中的“<”,但这是 contentBlocks 包传递数据方式的一部分,因此不确定如何对传入的数据进行编码。

非常感谢任何帮助。

我发现我在这里做错了什么。我的路线设置不正确:

router.get('/content/find?q={"@subject":"[id]"}', content.find);

应该很简单:

router.get('/content/find', content.find);

现在可以正确路由。