首页 > 解决方案 > 在 jamstack 中处理多个环境

问题描述

我对 JAMstack 开发方法很陌生,但对使用 JavaScript/Typescript 和 HTML 感觉很熟悉。

我正在做一个项目,我的 SPA 将使用 gridsome 用 JAMstack 编写。SPA 将使用一个 API,该 API 将在 ASP.NET Core 中编写,通过 JSON 端点公开数据。

我的问题是——人们如何处理多种环境?

当我使用 ASP.NET Core 开发所有内容时,我在服务器上使用环境变量,因此它将 API 基本 URL 呈现给我的标记,因此它可以从我的 JavaScript 中使用。

所以在开发中我的基础 api url 可能是 https://localhost:5000,在我的测试环境中它是https://test-api.somespa.sometld而我的生产将是https://api.somespa.sometld

我可以看到很多人使用 *.env 文件来区分不同环境之间的值但是通常当我使用 ASP.NET Core 构建时,我总是构建一个可以同时部署到测试和生产环境的包 - 由于服务器上的环境变量可用。

但是当我开发一个静态网站时我能做什么呢?我知道我可以构建一个用于测试的包和另一个用于生产的包 - 但这并不能确保这两个包完全相同(除了更改的 api 基本 url)。

那么你做了什么来适应多种环境呢?

标签: asp.net-coreconceptualgridsomejamstack

解决方案


推荐阅读