2016-08-24 99 views
0

我在AWS Lambda中使用Request包作爲節點,我試圖在請求的回調函數中獲取成功請求的主體。我知道這個請求是成功的,因爲它是在Toggl中創建資源,但是它沒有顯示在日誌中。下面的設置適用於我有的其他Express/Node應用程序,但不在這裏?我是Lambda的新手,所以有可能我錯過了一些明顯的東西。 Lambda表示console.log()將記錄到Cloudwatch,但它就像沒有運行回調函數。有任何想法嗎?節點HTTPS請求不返回Lambda中的回調函數

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

回答

0

原來我錯過了 '}' 回調函數,並請求之間。愚蠢的小錯誤,但至少現在有一個很好的例子,說明如何使用請求模塊在Lambda上執行POST請求。