完成serverless deploy
之后,如何设置将无服务器应用程序部署到的URL。这对我很有用,因为以后我可以在构建Javascript网站时使用此URL传递给我。
答案 0 :(得分:1)
您有一些选择。我最近制作了一个名为serverless-build-client
的插件,可能会有所帮助。在我的项目中,我的客户端是其自己的Serverless Framework项目,在环境变量部分中,我从另一个堆栈交叉引用了端点
provider:
environment:
REACT_APP_ENDPOINT: ${cf:my-backend.ServiceEndpoint}
此插件将使用serverless.yml
文件集中的环境变量来构建客户端。插件的实质是这个
const environment = this.serverless.service.provider.environment;
Object.keys(environment).forEach(variable => {
process.env[variable] = environment[variable];
});
// later
spawn("yarn", ["build"]);
在制作此插件之前,我使用了另一个名为serverless-stack-output
的插件,它将所有serverless.yml
的输出写入一个json文件。输出之一是ServiceEndpoint
,我编写了一个自定义脚本来从json文件中获取该值,并在构建之前设置环境变量
答案 1 :(得分:0)
对于那些需要这样做的人,我最终做了以下事情:
URL="$(serverless info --verbose | grep ServiceEndpoint | sed s/ServiceEndpoint\:\ //g)"
将变量URL设置到您的无服务器应用程序终结点。