【问题标题】:How to get "AWS Api Gateway's Event Object" from Serverless-http Express?如何从 Serverless-http Express 获取“AWS Api Gateway 的事件对象”?
【发布时间】:2022-09-29 20:36:27
【问题描述】:

我想使用 \"Lambda Authorizer\" 方法进行用户控制AWS API 网关.

在这个过程中,一个简单的身份验证服务器发布和验证 jwt 令牌,用于使用 expressJS 在 lambda 中构建。

但是,由于我不熟悉如何在 lambda 中开发 Express 应用程序,所以我在本地使用与现有 Express 表单相同的模板并使用无服务器 http 模块通过无服务器部署构建 Lambda 函数和 AWS API Gateway。

据我所知,在这种“Lambda Authorizer”方法中,AWS API Gateway 将客户端发送的 Bear Token 标头值作为 event->authorization Token 对象传递。

但是,我的 express 应用程序是以一种功能方式实现的,其中 req 和 res 存在如下,Lambda 无法接收该事件。

const serverless = require(\'serverless-http\');
const express = require(\'express\');
const jwt = require(\'./lib/jwt\')
const app = express();

app.use(express.urlencoded({ extended: true }));
app.use(express.json());

app.get(\'/api/token\', (req, res) => {
  const token = jwt.create_token(\'user\', \'user\')
  res.send({ token });
});

module.exports.handler = serverless(app);

在这种情况下,应该在 express 中采取什么行动来访问事件对象?

    标签: node.js amazon-web-services express aws-lambda


    【解决方案1】:

    我也在尝试类似的事情你找到方法了吗?请告诉我。

    【讨论】:

      猜你喜欢
      • 2020-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-07
      • 1970-01-01
      • 2015-11-19
      相关资源
      最近更新 更多