Express应用程序中的链接缺少Claudia JS的API Gateway阶段

时间:2018-07-11 14:07:37

标签: express aws-lambda aws-api-gateway claudiajs

我已经通过Claudia JS部署了一个非常基本的Express应用程序。它运作良好,但是任何链接或重定向都无法保持API Gateway阶段,因此不起作用。

例如,我将应用部署在http://example.execute-api.eu-west-2.amazonaws.com/production上-在本地运行时相当于http://localhost:3000。如果该页面上有一个沿<a href="/test">行的链接,该链接在本地进入了http://localhost:3000/test,但是通过api网关,它进入了http://example.execute-api.eu-west-2.amazonaws.com/test-丢失了URL的/ production部分,并且因此不起作用。

是否可以让Express知道所有路由都必须以/ production开头?

另一种解决方案是使用自定义域,但这似乎很麻烦,因为它似乎只需要一点配置即可。

1 个答案:

答案 0 :(得分:0)

您可以使用类似的方法来构建基本URL;

https://${req.apiGateway.event.headers.Host}/${req.apiGateway.event.requestContext.stage}