Я неоднократно проверял все, и, похоже, нет проблем с кодом или логикой.
Вот код:
var content = new FormUrlEncodedContent(new Dictionary<string, string>
{
{"grant_type", "authorization_code"},
{"code", code},
{"redirect_uri", redirectUri.ToString()},
{"client_id", clientId},
{"client_secret", clientSecret}
});
string token = string.Empty;
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded"));
var response = client.PostAsync(tokenEndpoint, content);
var responseContent = response.Result.Content.ReadAsStringAsync();
token = responseContent.ToString();
if (!response.Result.IsSuccessStatusCode) ;
}
return token;
И я получаю ошибку:
"error": "redirect_uri_mismatch",
"error_description": "Bad Request"
URL вышеуказанной страницы: http://localhost:62188/dashboard/googleSync.aspx
И в консоли Google у меня есть этот URL как авторизованный URL возврата:
Так чего мне здесь не хватает?