0

目前,我的准系统函数在本地工作,并返回authtoken。 当我压缩我的文件夹的内容(不是文件夹本身,前面的问题)并上传/测试Lambda时,出现错误“Can not find module'bl'”,它似乎来自AWS Lambda函数返回“无法找到模块'bl'”但它存在

/VAR /任务/ node_modules/googleapis/node_modules /谷歌-AUTH-库/ node_modules /请求/ request.js:9:10。

bl模块在那里,我试过重新安装bl和整个googleapis模块几次。我试过删除对bl的引用,但都没有工作。包含bl的请求模块本身包含多次,所以也许我尝试在不同位置引用bl。对我来说,它在本地工作是没有意义的,包括模块,并且不适用于lambda。

我已经写了几个Lambda函数,但是这是我不得不使用库并且上传zip而不是内联编写的第一个函数,所以也许还有其他的我错过了。

任何帮助将不胜感激。

var https = require('https'); 
var google = require('googleapis'); 
var doc = require('dynamodb-doc'); 
var dynamo = new doc.DynamoDB(); 

var key = { ... }; 

function requestToken() { 
    var scope = 'https://www.googleapis.com/auth/calendar'; 
    var jwtClient = new google.auth.JWT(key.client_email, null, key.private_key, scope, null); 
    jwtClient.authorize(function(err, tokens) { 
     if (err) { 
      console.log(err); 
      return; 
     } 
     else { 
      console.log('token: ' + JSON.stringify(tokens)); // works as intended locally 
     } 

    }); 
} 

requestToken(); 

回答