当我在azure docs post man上尝试一个azure rest api url时,我能够得到一个包含所有资源组的json。https://docs.microsoft.com/en-us/rest/api/resources/resourcegroups/list#code-try-0a link
但是我正从一个ASP.NET MVC核心C#应用程序中尝试它,我收到了一个空数组。
public async Task<ResourceGroupModel> GetResourceGroupStatus()
{
ResourceGroupModel resourceGroupModel = null;
try
{
string requestUrlString = iconfiguration.GetValue<string>("HealthSettings:AzureGetResourcesBySubscriptionURL");
string azureSubscription = iconfiguration.GetValue<string>("HealthSettings:AzureSubscription");
string clientId = iconfiguration.GetValue<string>("HealthSettings:ClientId");
string tenantId = iconfiguration.GetValue<string>("HealthSettings:TenantId");
string clientSecret = iconfiguration.GetValue<string>("HealthSettings:ClientSecret");
Uri requestUrl = new Uri(requestUrlString.Replace("{subscriptionId}", azureSubscription));
string token = await GetAccessToken(tenantId, clientId, clientSecret);
_httpClient.DefaultRequestHeaders.Remove("Authorization");
_httpClient.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
var response = _httpClient.GetAsync(requestUrl);
if (response.Result.IsSuccessStatusCode)
{
var data = response.Result.Content.ReadAsStringAsync();
resourceGroupModel = ResourceGroupModel.FromJson(data.Result.ToString());
}
}
catch (Exception ex)
{
}
return resourceGroupModel;
}
你能帮我摆脱Azure REST API的奇怪行为吗?在此之前,非常感谢您。:)
发布于 2019-06-16 04:00:32
删除已有的clientsecret并为服务原则创建新的clientsecret解决了该问题。
https://stackoverflow.com/questions/56550109
复制相似问题