CodeGenieApp / CodeGenieApp/serverless-express

Incompatibility with AWS API Gateway

Offen
#662 8 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
JavaScript
Sterne
5.3k
Forks
676
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Vendia's `serverless-express` package does not work as expected with AWS API Gateway, it only returns a blank screen instead the swagger screen.
This issue is forcing us to use the `serverless-http` package.

To reproduce the error, you basically have to:
1) Create an AWS Lambda function* with a simple project containing express, serverless-http or vendia and swagger;
2) Configure the AWS API Gateway to consume the Lambda function created in the step 1.

*Node versions tried: 14/16/18/20
BTW. Using AWS Lambda function URLs Vendia's `serverless-express` package works pretty fine with swagger.

Example of a simple project containing express, serverless-http or vendia and swagger:
```
const express = require('express')
const serverless = require('serverless-http')
const swaggerUI = require('swagger-ui-express')

const app = express()
app.use(
'/swagger',
swaggerUI.serve,
swaggerUI.setup(null, {
swaggerOptions: {
url: "https://petstore.swagger.io/v2/swagger.json"
}
})
)

module.exports.handler = serverless(app)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit dem minimalen Express-Beispiel im Issue und reproduziere es hinter AWS API Gateway unter Verwendung der aufgeführten Node-Versionen. Vergleiche das Verhalten mit Lambda function URLs und der serverless-http-Alternative; abgeschlossen ist die Aufgabe, wenn der Vendia serverless-express-Handler die Swagger UI über API Gateway rendert, anstatt einen leeren Bildschirm zurückzugeben.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, express, javascript, node.js
Bereich
api, backend, cloud
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
28/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.