Я применил сценарий GoogleAuthorizationCodeFlow от google api client dotnet и учебник, чтобы получить токен от того, что мой клиент отправил на сервер в качестве кода. но когда я называю flow.ExchangeCodeForTokenAsync
, я получаю следующее сообщение об ошибке:google ExchangeCodeForTokenAsync invalid_grant в webapi
{"Error:\"invalid_grant\", Description:\"\", Uri:\"\""}
Я прочитал google authorization invalid_grant и gusclass oauth 2 using google dotnet api client libraries, но они не помогли мне и. Я думаю, что это должно быть очень просто, но я не знаю, почему это не работает. Для стороны клиента, я использовал Satellizer и это мой сервер кода:
public bool PostExchangeAccessToken(GoogleClientAccessCode code)
{
string[] SCOPES = { "email" };
IAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow(new GoogleAuthorizationCodeFlow.Initializer
{
ClientSecrets = new ClientSecrets()
{
ClientSecret = "******",
ClientId = "********.apps.googleusercontent.com"
},
Scopes = SCOPES
});
try
{
TokenResponse token;
token = flow.ExchangeCodeForTokenAsync("*****@gmail.com", Newtonsoft.Json.JsonConvert.SerializeObject(code), "https://localhost:44301/",
CancellationToken.None).Result;
}
catch (Exception ex)
{
throw ex;
}
return true;
}
В чем проблема?
Можете вставить код, пожалуйста? –