#node.js #amazon-web-services #express #aws-lambda
#node.js #amazon-веб-сервисы #экспресс #aws-лямбда
Вопрос:
Я хотел бы использовать метод «Lambda Authorizer» для управления пользователями в AWS API Gateway.
В этом процессе простой сервер аутентификации, который выдает и проверяет токены jwt, используется для сборки в lambda с использованием ExpressJS.
Однако, поскольку я не знаком с тем, как разрабатывать приложение Express в lambda, я разрабатываю его локально с тем же шаблоном, что и существующая форма Express, и использую модуль serverless-http для создания функции Lambda и шлюза AWS API посредством развертывания без сервера.
Насколько я знаю, в этом методе «Лямбда-авторизатора» AWS API Gateway предоставляет значение заголовка токена Bear, отправленное клиентом в качестве объекта токена события — gt;авторизации.
Однако мое экспресс-приложение реализовано функционально, если существуют 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) =gt; { const token = jwt.create_token('user', 'user') res.send({ token }); }); module.exports.handler = serverless(app);
В этой ситуации какие действия следует предпринять в express для доступа к объектам событий?