Проверка в Postman v200.1.0
Проверка OAuth-клиента DLE API в Postman: client_credentials, authorization_code + PKCE, GET /me.
Клиент создаёте в DevCraft: OAuth-клиенты. Здесь — проверка через вкладку Authorization в Postman (классический grant_type, не credential_type из oauth-server).
Для XenForo как relying party используйте тот же клиент и тот же Redirect URI: XenForo.
API XenForo — это другое
Проверка API XenForo идёт на {board}/oauth2/authorize и {board}/api/oauth2/token, identity — GET /api/me. Это не /api/v2 и не клиент из DevCraft. Таблица URL — в гайде XenForo.
Что нужно заранее
- OAuth-клиент создан,
client_secretсохранён - Корневой
.envбез демо-режима — Инструкция .env - URL эндпоинтов с панели AS или из discovery
Переменные коллекции:
| Переменная | Значение |
|---|---|
baseUrl | https://ВАШ_САЙТ/api/v2 |
clientId | client_id из админки |
clientSecret | client_secret |
Client Credentials (быстрый тест)
У клиента должен быть grant client_credentials. Redirect URI не нужен.
Настройте OAuth 2.0
Запрос (например GET {{baseUrl}}/me) → Authorization → Type OAuth 2.0 → Get New Access Token.
| Поле Postman | Значение |
|---|---|
| Grant Type | Client Credentials |
| Access Token URL | {{baseUrl}}/oauth/token |
| Client ID / Secret | {{clientId}} / {{clientSecret}} |
| Client Authentication | в body или Basic Auth (оба есть в discovery) |
Получите токен и вызовите /me
Get New Access Token → ожидайте access_token. Use Token, затем GET {{baseUrl}}/me.
Что увидите: кто владеет токеном (user_id, name, …) — см. Авторизация.
Помощник Postman шлёт grant_type=client_credentials, не credential_type=oauth_client.
Authorization Code + PKCE
Нужны grants authorization_code и обычно refresh_token.
Redirect URI = Callback URL
Значение в админке DLE и Callback URL в Postman должны совпадать байт-в-байт. Типичный callback Postman: https://oauth.pstmn.io/v1/callback. Несовпадение → ошибка на authorize без code.
Для XenForo Callback = https://XF_BOARD/connected_account.php — см. XenForo.
Поля Get New Access Token
| Поле | Значение |
|---|---|
| Grant Type | Authorization Code (With PKCE) |
| Callback URL | тот же, что Redirect URI клиента |
| Auth URL | {{baseUrl}}/oauth/authorize |
| Access Token URL | {{baseUrl}}/oauth/token |
| Code Challenge Method | SHA-256 (S256) |
Войдите на сайт в окне Postman
Нет сессии DLE → окно логина сайта. Нужно войти в этом окне (cookies).
Use Token → GET /me
Как в Client Credentials.
Чего не ждать от OAuth helper
credential_type— это JSON-режим из oauth-server; Postman шлётgrant_type- Implicit — у AS его нет
- Password — только для доверенных клиентов; проще
credential_type=authв oauth-server
Если что-то не работает
| Симптом | Что проверить |
|---|---|
Нет code на authorize | Callback = Redirect URI; grant authorization_code |
| Grant denied | Grant отмечен у клиента |
access_token: null / error=demo_mode | Инструкция .env |
| Сразу логин DLE | Войдите в окне Postman, не в другой вкладке |
401 на /table | Bearer access_token, не сырой ключ (auth) |