C# 身份验证信息的格式不正确。检查.net core中Azure Ratecard API中授权标头的值

C# 身份验证信息的格式不正确。检查.net core中Azure Ratecard API中授权标头的值,c#,azure,asp.net-core,.net-core,ratecard-api,C#,Azure,Asp.net Core,.net Core,Ratecard Api,我正在尝试通过asp.net核心应用程序中的以下api获取azure费率卡详细信息 API: https : //management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq

我正在尝试通过asp.net核心应用程序中的以下api获取azure费率卡详细信息

API:

https : //management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'
string requestUrl = "https://management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'"

string accessToken = "Auth token here";

var usageRequest = (HttpWebRequest)WebRequest.Create(requestUrl);

usageRequest.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + accessToken);

usageRequest.ContentType = "application/json";

var response = (HttpWebResponse)usageRequest.GetResponse();                                            

var receiveStreams = response.GetResponseStream();

var readStreams = new StreamReader(receiveStreams, Encoding.UTF8);

var readData = readStreams.ReadToEnd();
它在早些时候起作用,但最近得到了以下回应

例外情况:

https : //management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'
string requestUrl = "https://management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'"

string accessToken = "Auth token here";

var usageRequest = (HttpWebRequest)WebRequest.Create(requestUrl);

usageRequest.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + accessToken);

usageRequest.ContentType = "application/json";

var response = (HttpWebResponse)usageRequest.GetResponse();                                            

var receiveStreams = response.GetResponseStream();

var readStreams = new StreamReader(receiveStreams, Encoding.UTF8);

var readData = readStreams.ReadToEnd();
System.Net.WebException:'远程服务器返回错误:(400) 身份验证信息的格式不正确。请检查 授权标头的值…”

请在下面找到我的代码,相同的代码在.net framework控制台中正常工作

代码:

https : //management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'
string requestUrl = "https://management.azure.com/subscriptions/{Sub Id}/providers/Microsoft.Commerce/RateCard?api-version=2015-06-01-preview&$filter=OfferDurableId eq 'MS-AZR-0044P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'"

string accessToken = "Auth token here";

var usageRequest = (HttpWebRequest)WebRequest.Create(requestUrl);

usageRequest.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + accessToken);

usageRequest.ContentType = "application/json";

var response = (HttpWebResponse)usageRequest.GetResponse();                                            

var receiveStreams = response.GetResponseStream();

var readStreams = new StreamReader(receiveStreams, Encoding.UTF8);

var readData = readStreams.ReadToEnd();
如果微软方面有任何改变,或者有任何其他方法来解决这个异常,你有什么想法吗

问候,


Anand K

您是否使用POSTMAN之类的REST客户端检查了相同的api调用?请参阅