Aws lambda js文件路径有问题,NuxtJS+;AWS Lambda

Aws lambda js文件路径有问题,NuxtJS+;AWS Lambda,aws-lambda,nuxt.js,Aws Lambda,Nuxt.js,试图将我的nuxt应用程序部署到aws lambda。 阅读以下文章: 所有都可以工作,但在控制台中有一些js错误。尝试了“router.base”和“build.publicPath”配置的多个变体,但没有成功 这是我的环境: nuxt.config.js: package.json: server.js: handler.js: serverless.yml: 所以,当我访问部署的应用程序时,除了js控制台中的错误之外,一切都很好: 正如我在html代码中检查的那样,此js的路径生成为

试图将我的nuxt应用程序部署到aws lambda。 阅读以下文章:

所有都可以工作,但在控制台中有一些js错误。尝试了“router.base”和“build.publicPath”配置的多个变体,但没有成功

这是我的环境:

nuxt.config.js:

package.json:

server.js:

handler.js:

serverless.yml:

所以,当我访问部署的应用程序时,除了js控制台中的错误之外,一切都很好:

正如我在html代码中检查的那样,此js的路径生成为:

https://*****.execute-api.eu-central-1.amazonaws.com/dev//u nuxt/7881ea044902e4092627.js

这是404,但是!这一个是:

https://********.execute-api.eu-central-1.amazonaws.com/dev/dev//u nuxt/7881ea044902e4092627.js

您可以看到我手动添加的其他/dev/。
那么,我应该怎么做才能让它加载呢?我在配置中遗漏了什么(在哪一个配置中)?

只是想解释一下发生了什么:

可能API网关正在重定向应用程序以使用路径“/dev”运行,因此当我们访问“/dev”时,它会将内部重定向到我们的Nuxt应用程序,并返回为200,而当Nuxt尝试获取文件时,它不会添加路径“/dev”。 但是,如果您将“publicPath”更改为“/dev/_-nuxt/”,那么您可以使用路径“/dev/dev/_-nuxt”访问您的文件,第一个“dev”可能是API网关添加的,当您的nuxt应用程序尝试获取该文件时,它将转到“/dev/_-nuxt/”并获得404

我无法真正修复它,但如果我开始使用真正的域,我就不会有这些问题,因为API网关将停止向我的路径添加此“/dev”。要做到这一点,您可以使用无服务器“无服务器域管理器”插件


我还写了一篇关于如何使用Typescript创建Nuxt应用程序的文章,您可以在那里查看如何创建:

看起来像是第二个
dev
,其中有一个是在您的配置文件中定义的。First
dev
是API的阶段名称。这似乎是对你所描述的行为的唯一解释<代码>构建:{publicPath:'/dev/\u numxt/',//more code}@ASR谢谢,但是我应该如何处理我的配置?您是否尝试将
publicPath
设置为
/\u numxt/
?或者您可以附加URL路径
serverless
returns与您一起
publicPath
@asr是的,已经尝试过了。我尝试了这些变体:router.base='/'&&publicPath='/dev/_-nuxt/'router.base='/'&&publicPath='/_-nuxt/'router.base='/dev/'&&publicPath='/dev/'router.base='/dev/'&&publicPath='/_-nuxt/'两者都不起作用。