С этого утра я пытаюсь получить свой accessToken от GoogleAPI, но он совсем не работает, и я не знаю почему.
Я отправляю запрос на отправку по этому адресу: https://oauth2.googleapis.com/token (адрес из файла json, сгенерированного службой учетных записей, с private_key, project_id и т. Д.)
И каждый раз, когда я получаю этот http-ответ: { "error": "internal_failure" }
Мой заголовок jwt:
{
"scope": "https://www.googleapis.com/auth/homegraph",
"nbf": 1542816703,
"exp": 1542820303,
"iat": 1542816703,
"iss": "myaccount@google.com",
"aud": "https://oauth2.googleapis.com/token"
}
И мой звонок:
var jwtResult = ConstructJwt();
var paramaters = new Dictionary<string, string>();
paramaters.Add("grant_type", "urn:ietf:params:oauth:grant-type:jwt-bearer");
paramaters.Add("assertion", jwtResult);
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri(_serviceAccount.TokenUri),
Content = new FormUrlEncodedContent(paramaters)
};
this._client.DefaultRequestHeaders.Accept.Clear();
this._client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded"));
var response = await this._client.SendAsync(request);
var accessToken = await response.Content.ReadAsAsync<AccessTokenResponseModel>();
Если у кого-то есть идея ... Спасибо за ответы.