Je suis en train de me connecter avec un authentificateur de support de jeton dans un WebApi
à distance de mon .net Consoleapp
.C# Autorisation a été refusée pour cette demande
Malgré le fait que mon programme revient avec un succès un jeton, dans ma PostAsync
méthode que je reçois le message suivant:
« L'autorisation a été refusée pour cette demande »
Mon code est la suivante
hHttpClient client = new HttpClient();
client.BaseAddress = new Uri(URL);
HttpContent Content = new StringContent(string.Format("grant_type=password&username={0}&password={1}",
HttpUtility.UrlEncode(ApiLoginUsername),
HttpUtility.UrlEncode(ApiLoginPassword)), Encoding.UTF8,
"application/x-www-form-urlencoded");
HttpResponseMessage response = client.PostAsync("/api/login", Content).Result;
string resultJSON = response.Content.ReadAsStringAsync().Result;
result = JsonConvert.DeserializeObject<LoginTokenResult>(resultJSON);
jusqu'à présent, si bon code retourne un jeton et le stocke dans le résultat
La partie suivante fait ce qui suit avec: Avec le jeton que j'ai reçu je suis en train de retrive des données
HttpContent TestContent = new StringContent(string.Format("Authorization","Bearer"+ result.AccessToken,"application/json"));
var Product = client.PostAsync("/api/Report",TestContent).Result;----> This is where it says Authorization denied
var test = Product.Content.ReadAsStringAsync().Result;
return result;
Pourquoi ai-je dans le test
le message « autorisation a été refusée pour cette demande » Ai-je manqué quelque chose d'important dans mon code? Toute aide serait appréciée
Cela pourrait être un certain nombre de raisons, mais je suppose que c'est parce qu'il n'y a pas d'espace entre '" Bearer "' et 'result.AccessToken'. –
@Kirk merci pour la réponse rapide, mais ce n'était pas ce que vous suggérez –
Authorization/Bearer est un en-tête de demande. –