节点 HTTPS 请求未在 Lambda 中返回回调函数

Node HTTPS request not returning callback function in Lambda

我在 AWS Lambda 中使用节点的 Request 包,我试图在请求的回调函数中获取成功请求的主体。我知道请求是成功的,因为它在 Toggl 中创建资源,但它没有显示在日志中。下面的设置适用于我拥有的其他 Express/Node 应用程序,但不适用于此处?我是 Lambda 的新手,所以我可能遗漏了一些明显的东西。 Lambda 说 console.log() 将记录到 Cloudwatch,但好像回调函数不是 运行。有什么想法吗?

var request = require('request');


exports.handler = function signupNew(event, context){
  
  request({'url': 'https://www.toggl.com/api/v8/projects', //URL to hit
          'method': 'POST',
          'headers': {
              'Content-Type': 'application/json',
              'Accept': 'application/json'
          },
          'auth': {
            'user': 'xxxxx',
            'pass': 'api_token'
          },
    'json': {
      "project":{
      "name": "Bobby", //name of project,
      "wid":1057436, //Workspace
      "template_id":16368482, //template
      "is_private":false //public?
    }
      }, function(error, response, body){ //response for API call 

          if(error) {
              console.log(error);

          } else {
              //signupPayload.toggl = body;
              console.log(response.statusCode, body);
              context.done(null, body)
          }

      }});



} //end of handler function

原来我在回调函数和请求之间缺少一个“}”。愚蠢的小错误,但至少现在有一个很好的例子,说明如何使用请求模块在 Lambda 上执行 POST 请求。