У меня есть настольное приложение WPF, которое должно быть связано с учетной записью пользователя Google для последующей интеграции с Google Drive. Я использую их Google.Apis.Auth.OAuth2
утилиту для обработки авторизации. Я зарегистрировал свое приложение в консоли Google и добавил идентификатор клиента OAuth2 для Desktop app
согласно документации.
Моя проблема в том, что я не вижу, где в консоли я могу добавить / добавить в белый список пользовательский редирект URI для моего приложения - эта опция, кажется, доступна только для веб-приложений, и у моего настольного приложения нет другого выбора, кроме как перенаправить на localhost
, что недопустимо. Я попытался переопределить GoogleAuthorizationCodeFlow
и передать свой URI непосредственно в
public override AuthorizationCodeRequestUrl CreateAuthorizationCodeRequest(string redirectUri)
=> new GoogleAuthorizationCodeRequestUrl(new Uri(AuthorizationServerUrl))
{
ClientId = ClientSecrets.ClientId,
Scope = string.Join(" ", Scopes),
RedirectUri = _customRedirectUri,
State = _state
};
Но Google, конечно, выплевывает redirect_uri_mismatch , потому что почему бы и нет - я не мог добавить это где-то еще. Я реализовал ту же функциональность для интеграции DropBox, где вы можете указать и внести в белый список страницу перенаправления - я предполагал, что у Google будет что-то похожее, но поле Authorized Redirect URI
отсутствует даже для настольных приложений.
Информация об этом кажется очень скудной. Это вообще возможно и чего мне не хватает?