Avi*_*ash 3 node.js aws-lambda aws-api-gateway serverless-framework serverless-framework-offline
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, response);
Run Code Online (Sandbox Code Playgroud)
控制台错误
根据 API Gateway 规范,正文内容必须是字符串化的。检查您的 Lambda 响应并确保您在 body 对象上调用 JSON.stringify(YOUR_CONTENT)
此处的错误为您提供了解决方案。
API Gateway 的回调需要一个字符串而不是一个 javascript 对象。在将其传递给回调之前,您必须对其进行字符串化:
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, JSON.stringify(response));
Run Code Online (Sandbox Code Playgroud)
编辑:
然后在客户端解析 JSON 字符串以将其恢复为对象(此示例假设您的客户端也是 Javascript):
var myObject = JSON.parse(responseBody);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4351 次 |
| 最近记录: |