我希望利用 Azure 静态应用程序来托管基于角度的 SPA 应用程序,对于这个应用程序,我有一个托管在 Azure App Service 上的 REST API。根据我对包括 Microsoft 文档在内的所有示例的分析,我发现 Azure Function App 用于托管 API,而我的情况并非如此。
谁能帮我获取一些示例,其中包括托管在 Azure App Service 上的 API,或者可能托管在 AWS、GCP 等其他云提供商上
我希望利用 Azure 静态应用程序来托管基于角度的 SPA 应用程序,对于这个应用程序,我有一个托管在 Azure App Service 上的 REST API。根据我对包括 Microsoft 文档在内的所有示例的分析,我发现 Azure Function App 用于托管 API,而我的情况并非如此。
谁能帮我获取一些示例,其中包括托管在 Azure App Service 上的 API,或者可能托管在 AWS、GCP 等其他云提供商上
看看这个https://stackoverflow.com/a/70675328/6727650
我在 AngularJS 应用程序中遇到了一个错误,它很简单,但使用了指令。决议如下。
在 repo 的根目录中创建一个文件staticwebapp.config.json并添加以下配置:
{
"globalHeaders": {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET, OPTIONS"
}
}
发布您的应用程序并重新测试。成功解决!下面我的AngularJS是如何项目到项目的
您在这里有几个选项,选择一个是您需要自己做的事情。最后,无论 API 在哪里运行,它都只是您想要从静态 Web 应用程序连接到的 API。因此,如果您正确设置了 CORS,您可以将 API 发布到任何地方(只要它可以访问 Internet)并从您的前端连接到它。
这里有一些要考虑的事情:
跨域资源共享(CORS) 是一种基于 HTTP 标头的机制,它允许服务器指示除其自身之外的任何来源(域、方案或端口),浏览器应允许从中加载资源。CORS 还依赖于一种机制,浏览器通过该机制向托管跨域资源的服务器发出“预检”请求,以检查服务器是否允许实际请求。在该预检中,浏览器发送指示 HTTP 方法的标头和将在实际请求中使用的标头。
更多信息:跨域资源共享 (CORS)
设置 CORS,以便您的静态托管网站可以访问您在其他地方运行的 API。使用静态 Web 应用程序时,这是为您管理的。
您可以直接从通用 V2 或 BlockBlobStorage 帐户中的容器提供静态内容(HTML、CSS、JavaScript 和图像文件)。
详细信息:在 Azure 存储中托管静态网站
这是来自存储帐户的静态网站托管,与静态 Web 应用程序不同(见下文)。在这种情况下,您将网站的静态资产托管在存储帐户中。如果需要证书、自定义域等,则需要添加其他 Azure 资源,例如 CDN。使用静态 Web 应用程序时,这是为您管理的。
使用静态 Web 应用程序,静态资产与传统的 Web 服务器分离,而是由分布在世界各地的点提供服务。由于文件在物理上更接近最终用户,因此这种分布使文件服务速度更快。此外,API 端点使用无服务器架构托管,这避免了对完整后端服务器的需求。
详细信息:什么是 Azure 静态 Web 应用?
但是,您可以选择仅使用 Azure 静态 Web 应用程序的静态资产部分,并让您的 API 在其他地方运行。
就教程而言:您可能会发现这个很有趣:在 Azure 应用服务中使用 CORS 托管 RESTful API
Azure 应用服务提供高度可扩展的自我修补 Web 托管服务。此外,应用服务内置了对 RESTful API 的跨域资源共享 (CORS) 的支持。本教程展示了如何将 ASP.NET Core API 应用部署到具有 CORS 支持的应用服务。您使用命令行工具配置应用程序并使用 Git 部署应用程序。