【发布时间】:2020-11-17 07:02:41
【问题描述】:
这个问题是下面问题的延续。
How do I handle the REST API in node.js in Marklogic Grove?
我能够实现一个示例 REST API,当使用 Grove 进行身份验证时可以调用该 API,如下所示。
中间层/routes/index.js
const authProvider = require('../../grove-node-server-utils/auth-helper');
router.get('/my-rest-api/bar',(req, res) => {
const response = {status : "success"};
authProvider.isAuthenticated(req,res,()=>{
res.send(response);
});
});
接下来,我想从 my-rest-api 中调用 MarkLogic API。以下是我通过反复试验写的,但是出现了错误,我该怎么写呢?
中间层/routes/index.js
const authProvider = require('../../grove-node-server-utils/auth-helper');
const backend = require('../../grove-node-server-utils/backend');
router.get('/my-rest-api/bar',(req, res) => {
const myResponse = {status : "success!!"};
console.log("start");
const backendOptions = {
method: 'GET',
path: '/v1/resources/myMarkLogicAPI?p1=test'
};
authProvider.isAuthenticated(req,res,()=>{
console.log("preprocessing");
backend.call(req, backendOptions, () => {
console.log("postprocessing")
res.send(myResponse);
});
});
});
错误信息是:{"message":"TypeError: Cannot convert undefined or null to object"}
【问题讨论】: