我编写了 lambda 函数,每当在 s3 存储桶上创建任何新对象时,它都会检索 s3 Url。检索 s3Url 后,此 lambda 通过 REST Call 向我的服务器发出请求。
我观察了云观察者。它未能向我的服务器发送请求我不想在我的 lambda 中使用外部包,我想让它轻量级,这就是我使用 nodeJ 的 https 的原因。
这是我的 Lambda 代码
exports.handler = (event,context,callback) => {
// Extract S3 Url and id From S3 object present in event
const https = require('https');
let {s3 , awsRegion} = event["Records"][0];
let {object : {key}, bucket : {name}} = s3;
let s3URL = `https://${name}.s3.${awsRegion}.amazonaws.com/${key}`;
console.log("sURL",s3URL);
let _id = key.split('/')[0];
console.log("id",_id);
//Making http request to my server
let body='';
// the …
Run Code Online (Sandbox Code Playgroud) amazon-web-services node.js ecmascript-6 aws-lambda nodejs-server
以前我用它在React JSX组件中调用我的方法,这个方法给我正确的输出
this.updateState.bind(this)
Run Code Online (Sandbox Code Playgroud)
但当我将上述声明替换为
() => this.updateState(...this)
Run Code Online (Sandbox Code Playgroud)
这不会给我输出它返回undefined