ГлавнаяБлогErrors / Fixesкак установить urn:ietf:wg:oauth:2.0:oob как redirect_uri в авторизации Google 2.0
Errors / Fixes5 сентября 2026 г.3 мин

как установить urn:ietf:wg:oauth:2.0:oob как redirect_uri в авторизации Google 2.0

Как настроить redirect URI как urn:ietf:wg:oauth:2.0:oob в Google Auth 2.0 ## Введение При работе с OAuth 2.0 для авторизации пользователей в Google, иногда возникают проблемы с перенаправлением после получения...

как установить urn:ietf:wg:oauth:2.0:oob как redirect_uri в авторизации Google 2.0
как установить urn:ietf:wg:oauth:2.0:oob как redirect_uri в авторизации Google 2.0 - image 2

Как настроить redirect URI как urn:ietf:wg:oauth:2.0:oob в Google Auth 2.0

Введение

При работе с OAuth 2.0 для авторизации пользователей в Google, иногда возникают проблемы с перенаправлением после получения кода авторизации. В данном руководстве мы рассмотрим, как настроить redirect URI как urn:ietf:wg:oauth:2.0:oob для использования в WordPress и как решить возникающие ошибки.

Проблема и её решение

Во время работы с API Google Analytics через OAuth 2.0 в WordPress, автор не смог получить код авторизации в том же окне, а был перенаправлен на другую страницу. Это приводило к проблемам с получением токена доступа.

Используемое решение

Для решения проблемы было решено использовать urn:ietf:wg:oauth:2.0:oob в качестве URI перенаправления. Это специальный URI, который используется для ввода кода авторизации вручную. Этот метод позволяет избежать перенаправления пользователя на сторонний сайт.

Шаги для настройки

  1. Создайте новый клиент приложения Перейдите в Google Console и создайте новый клиент приложения для desktop или installed application. Это позволит вам указать urn:ietf:wg:oauth:2.0:oob как URI перенаправления.

  2. Настройте redirect URI В настройках клиента приложения Google Console укажите urn:ietf:wg:wg:oauth:2.0:oob в качестве URI перенаправления.

  3. Измените код авторизации Измените ваш код авторизации, чтобы использовать этот URI перенаправления.

if (isset($_POST['save_code']) && isset($_POST['access_code'])) {
    $authCode = $_POST['access_code'];
    $client = new Google_Client();
    $client->setClientId('***');
    $client->setClientSecret('***');
    $client->setDeveloperKey('***');
    $client->setScopes([
        'https://www.googleapis.com/auth/analytics',
        'openid',
        'https://www.googleapis.com/auth/analytics.readonly'
    ]);
    $client->setRedirectUri('urn:ietf:wg:oauth:2.0:oob'); // Установка URI перенаправления
    $client->setAccessType('offline');
    $client->setIncludeGrantedScopes(true);
    $client->authenticate($authCode);
    $access_token = $client->getAccessToken();
    var_dump($access_token);
}
  1. Создайте URL для авторизации Создайте URL для авторизации, используя необходимые параметры.
$url = http_build_query(array(
    'next' => 'http://myproject.local.com/wp-admin/admin.php?page=analytify-settings',
    'scope' => 'https://www.googleapis.com/auth/analytics',
    'response_type' => 'code',
    'redirect_uri' => 'urn:ietf:wg:oauth:2.0:oob', // Указание URI перенаправления
    'client_id' => '***'
));
  1. Открыть окно авторизации Откройте окно авторизации с помощью JavaScript.
<a target="_blank" href="javascript:void(0);" onclick="window.open('https://accounts.google.com/o/oauth2/auth?<?php echo $url ?>', 'activate', 'width=700,height=500,toolbar=0,menubar=0,location=0,status=1,scrollbars=1,resizable=1,left=0,top=0');">Click here...</a>
  1. Получение кода авторизации После авторизации пользователь должен ввести код авторизации вручную в ваше приложение.

Обработка ошибок

После успешной авторизации, вы должны получить код авторизации и использовать его для получения токена доступа. Однако, если вы сталкиваетесь с ошибкой ACCESS_TOKEN_SCOPE_INSUFFICIENT, это означает, что предоставленные права недостаточны для выполнения операции.

Решение ошибки ACCESS_TOKEN_SCOPE_INSUFFICIENT

  1. Проверьте права доступа Убедитесь, что в настройках вашего клиента приложения указаны все необходимые права доступа.

  2. Обновите права доступа Если права недостаточны, обновите их в Google Console и повторите процесс авторизации.

  3. Проверьте API Убедитесь, что API, к которому вы пытаетесь получить доступ, действительно поддерживает указанные права доступа.

Заключение

Использование urn:ietf:wg:oauth:2.0:oob в качестве URI перенаправления позволяет избежать перенаправлений и обеспечивает более удобный процесс авторизации. Следуя вышеописанным шагам, вы сможете успешно настроить авторизацию в Google OAuth 2.0 в вашем WordPress-приложении.

Практические советы

  • Убедитесь, что ваш клиент приложения Google имеет соответствующие права доступа.
  • Проверьте, что URI перенаправления правильно настроен в Google Console.
  • Используйте urn:ietf:wg:oauth:2.0:oob только для ввода кода авторизации вручную.

FAQ

Q: Как мне настроить URI перенаправления в Google Console?

A: Перейдите в раздел "Одноразовые URI перенаправления" в Google Console и добавьте urn:ietf:wg:oauth:2.0:oob.

Q: Что делать, если я сталкиваюсь с ошибкой ACCESS_TOKEN_SCOPE_INSUFFICIENT?

A: Проверьте права доступа в настройках вашего клиента приложения и убедитесь, что они включают все необходимые API.