我正在使用带Sequelize的Claudia API -builder,并在从API返回响应时遇到问题
app.js:
const ApiBuilder = require('claudia-api-builder');
const app = new ApiBuilder();
const citizenPersonalDetails = require('./app/controller/cont.citizenpersonaldetails');
app.get('/citizens', function (req, res) {
citizenPersonalDetails.getAll(req, res);
})
module.exports = app当我返回如下响应时:
getAll: function (req, res) {
citizenPersonalDetails.findAll({})
.then(citizenPersonalDetails => {
if (citizenPersonalDetails.length === 0) {
return res.status(200).json(citizenPersonalDetails)
} else {
return res.status(200).json(citizenPersonalDetails)
}
}).catch(error => {
console.log("==== ERROR ====", error);
});
}这给了我一个错误: res.status不是一个函数
在Claudia文档中,它只提到了请求对象:
https://claudiajs.com/claudia-api-builder.html
来自文档:
var ApiBuilder = require('claudia-api-builder'),
api = new ApiBuilder(),
superb = require('superb');
module.exports = api;
api.get('/greet', function (request) {
return request.queryString.name + ' is ' + superb();
});克劳迪娅有什么响应对象吗?返回响应的正确方式是什么?
我正在使用claudia local-api进行本地api测试。
发布于 2020-07-23 12:04:13
没有response第二个参数(就像在Express.js中一样)。
似乎有一个ApiResponse可用于返回自定义响应和customer header。
但是,如果您已经使用Express.js进行了此工作,则可以完全跳过claudia api-builder,而只使用claudia to run Express.js app in AWS Lambda
https://stackoverflow.com/questions/62992323
复制相似问题