gpt4 book ai didi

c# - Azure Web API 访问 : Which URL should I use, Web 服务 URL 或网关 URL?

转载 作者:行者123 更新时间:2023-12-02 22:59:59 27 4
gpt4 key购买 nike

我在 Azure 中上传了一个应用服务,已经具有工作 API(带有 JWT token 系统)。一切都很好,正在使用 <mywebapp>.azurewebsites.net (Web 服务 URL)用于前端网站,以及 <mywebapp>.azurewebsites.net/<api-route>用于 API 访问。

然后我阅读了有关 API 管理服务的信息,因此我在那里注册了我的网络应用程序。现在我可以使用门户来测试我的API,它甚至有自己的 token 系统,但是我的JWT token 系统仍然有效,所以现在我需要做2种授权方法才能使用这个API?我还有一个新域名:<mywebapp>.azure-api.net/<api-route> (网关 URL)现在造成了困惑。

我的问题是,是否可以使用相同的 Web 应用程序作为前端和 API,就像我在应用程序服务示例中所做的那样?或者创建一个单独的 Web 应用程序以在 API 管理服务中使用(并使用默认 token 系统)是否更漂亮?

我使用本教程使用 Razor 创建了前端:https://learn.microsoft.com/en-us/aspnet/core/tutorials/razor-pages/?view=aspnetcore-5.0

然后我使用本教程在其之上添加了 API:https://learn.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-5.0&tabs=visual-studio

最佳答案

对于您的场景,由于您只有一个 API,因此您可以直接从 Web 应用程序调用 API 端点,并完全摆脱 APIM。我认为这里不需要 APIM。

如果您有多个 API,并且您希望将所有 API 抽象到一个 URL 下,这样您的前端 Web 层就不必记住多个 API URL,那么 APIM 会有所帮助。

例如,如果您有 3 个不同的 API URL,那么您可以将所有内容抽象到一个 APIM URL 下,如下所示 -

apimurl.azure-api.net
-- api1url.azurewebsites.net/hr
-- api2url.azurewebsites.net/finance
-- api3url.azurewebsites.net/payroll

然后您的 Web UI 就可以调用 apimurl.azure-api.net/hr或者apimurl.azure-api.net/finance

对于您的情况,请使其简单并使用应用服务 URL。如果您想测试您的 API,只需使用 Swagger UI。

关于c# - Azure Web API 访问 : Which URL should I use, Web 服务 URL 或网关 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68451172/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com