对于具有Azure身份的WebAPI,如何传递404错误?

问题描述 投票:1回答:2

我在Visual Studio中创建了一个WebAPI,并选择了Azure身份进行身份验证。运行API时,出现未授权 404错误。

这是我在appsettings.json文件中看到的。

我应该如何在Azure Portal中解决404错误?

  "AzureAd": {
    "Instance": "https://login.microsoftonline.com/",
    "Domain": "myemailmycompany.onmicrosoft.com",
    "TenantId": "xxxxxxxx-xxxx-xxxx-xxxx-dcbeeeac82d9",
    "ClientId": "xxxxxxxx-xxxx-xxxx-xxxx-ac3f-9a785f72fd83"
  }
azure asp.net-web-api azure-active-directory azure-web-sites
2个回答
0
投票

我已经清除了您描述的问题。根据QuickStart的示例代码(基于核心2.0的MVC项目),它可以正常运行,但是我们在vs 2019的本地创建了一个核心3.0 api项目。它无法正常工作。

我认为问题可能在于mvc和webapi项目的创建有些不同,但是要研究的地方在哪里?

因此,我进行了一些研究。比较示例代码和您自己的代码之间的差异,很遗憾您找不到特定的原因。

因此,我创建了.net core 3.0 mvc项目。控制器使用webapi格式,并且Startup.csProgram.cs文件不需要任何修改。它还可以满足webapi的项目要求并实现功能。您可以在github中下载我的demo code

您需要在appsettings.json中进行一些修改,此演示使用核心3.0,因此我建议您使用vs2019打开它。然后,您可以检查WeatherForecastController.cs,并设置api。


-1
投票

您不能像这样运行项目,因为您没有身份验证令牌或任何东西,因为它没有Web API。

您可能要从这里开始,因为我不确定您使用的是哪个客户端,但这是一个很好的例子。https://github.com/Azure-Samples/active-directory-dotnet-native-aspnetcore-v2/tree/master/1.%20Desktop%20app%20calls%20Web%20API

https://docs.microsoft.com/en-ca/samples/azure-samples/active-directory-dotnet-native-aspnetcore-v2/calling-an-aspnet-core-web-api-from-a-wpf-application-using-azure-ad-v2/

© www.soinside.com 2019 - 2024. All rights reserved.