【问题标题】:Can a Blazor API project share the same localhost endpoint with the client?Blazor API 项目能否与客户端共享相同的 localhost 端点?
【发布时间】:2020-07-13 22:22:47
【问题描述】:

据我所知,创建 Blazor 客户端应用程序的模型是为客户端创建一个项目,为服务器创建一个项目。 Microsoft 模板显示了一个异步调用来获取数据,但它只是一个静态 JSON 文件的下载。任何真正的应用程序都需要调用 API。

所以我为此有一个单独的 API 项目。但是该项目有一个不同的 localhost 端点用于调试,这对我来说是一场 CORS 噩梦。我从客户端到服务器的调用并不是真正的跨站点,除了这个调试问题,所以我不想做大量工作来找出 CORS。

如何让 Blazor 客户端和 Web api 服务器在同一个 localhost(或别名)域上运行,以便客户端可以发出相同的站点请求?

【问题讨论】:

  • 您必须清楚 Blazor-ServerSide 或 Blazor-WebAssembly。
  • 不同的端点表示服务器端,但是:为什么?
  • @HenkHolterman:这就是模板创建的内容。我很高兴他们共享同一个项目,但这似乎也不可能,因为一个是标准的,另一个是核心的。
  • 听起来你创建了 2 个独立的项目。看看彼得的答案。 “Wasm Hosted”模板应该有你需要的一切。

标签: asp.net-web-api blazor


【解决方案1】:

是的。

当您创建一个新的 Blazor Web Assembly 应用程序时,有一个用于在 ASP.NET 中托管它的复选框。

如果您勾选该复选框,那么您将获得一个服务器,该服务器既为客户端页面提供服务(通过 _Host.cshtml)又响应 Web api 调用。

【讨论】:

    猜你喜欢
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2011-07-26
    • 2023-04-05
    • 2016-06-28
    • 2020-01-27
    • 1970-01-01
    相关资源
    最近更新 更多