asp.net-core - 在 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)。
那么你做了什么来适应多种环境呢?
解决方案
推荐阅读
- android - windowBackground 上的居中图像与膨胀布局上的图像不同
- python - 无法从 __init__ 导入属性
- python - 施加约束时问题不遵循 DCP 规则
- mysql - 为什么 Google Cloud SQL 中的 COUNT 有时会这么慢?
- google-app-maker - 如何使用计算模型将数据保存到 REST API
- playframework - 一个灵活的扩展方法的多对多版本
- javascript - 在被测函数内部创建的对象上模拟 jQuery 方法调用
- c++ - 我访问的是什么错误的内存导致分段错误?
- nlp - 如何在语义文本相似性任务中使用 BERT 模型的预训练检查点?
- javascript - 我无法使用正则表达式将文本转换为标签