作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, response);
控制台错误
According to the API Gateway specs, the body content must be stringified. Check your Lambda response and make sure you are invoking JSON.stringify(YOUR_CONTENT) on your body object
最佳答案
这里的错误给了你解决方案。
API 网关的回调需要一个字符串而不是 javascript 对象。在将它传递给回调之前,您必须对其进行字符串化:
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, JSON.stringify(response));
编辑:
然后在客户端解析 JSON 字符串以将其返回给一个对象(此示例假设您的客户端也是 Javascript):
var myObject = JSON.parse(responseBody);
关于node.js - 在 lambda 函数中发送 JSON 响应时无服务器离线响应问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52406234/
我目前有一个功能可以从远程 url 抓取 mp3 文件,并将其上传到 Amazon S3 存储桶。 该函数似乎工作正常,因为该文件出现在 S3 中,但是我担心在我的本地服务器上使用隧道 (ngrok)
我是一名优秀的程序员,十分优秀!