паспорт oauth/authorize всегда исправлен перенаправление входа в систему, но аутентификация клиента не удалась

когда я запрашиваю перенаправление URL-адреса, я не могу получить access_token, он всегда перенаправляет на вход в систему

// First route that user visits on consumer app
Route::get('/redirect', function () {
    // Build the query parameter string to pass auth information to our request
    $query = http_build_query([
        'client_id' => 1,
        'redirect_uri' => 'http://app_golf.xiongmaojf.com/callback',
        'response_type' => 'code',
        'scope' => 'crud-bookmark-collections crud-bookmark-tags crud-bookmarks'
    ]);
// var_export($query);
    // Redirect the user to the vOAuth authorization page
    return redirect('http://golf.xiongmaojf.com/oauth/authorize?' . $query);
});

// Route that user is forwarded back to after approving on server
Route::get('/callback', function (Request $request) {
    $http = new GuzzleHttp\Client;

    $response = $http->post('http://golf.xiongmaojf.com/oauth/token', [
        'form_params' => [
            'grant_type' => 'authorization_code',
            'client_id' => 1, // from admin panel above
            'client_secret' => 'LNJhtWdGsDTQmei9x4lAh2BBfOmQkqXG3jdOjGRL', // from admin panel above
            'redirect_uri' => 'http://app_golf.xiongmaojf.com/callback',
            'code' => $request->code // Get code from the 
        ]
    ]);

    return json_decode((string) $response->getBody(), true)['access_token'];
});

но запрашиваю URL-адрес oauth/authorize, я не могу получить токен, он всегда перенаправляет на вход в систему,

Я решил эту проблему, потому что я не вхожу в систему, мне очень жаль, но когда я вошел в систему, запросите URL-адрес oauth/authorize , всегда требуется имя пользователя и пароль для golf.xiongmaojf.com, любое имя пользователя и пароль не полезно,

введите здесь описание изображения

и если я нажму «Отмена», он ответил

{
    "error": "invalid_client",
    "message": "Client authentication failed"
}

Я решил эту проблему, зарегистрировав новый app_client, используя oauth/clients, и получил эту страницу введите здесь описание изображения

Я получил access_token


person zhangjun    schedule 01.12.2016    source источник
comment
Я решил проблему с перенаправлением на /login , но у меня возникла другая проблема, это ответ Проверка подлинности клиента не удалась   -  person zhangjun    schedule 02.12.2016


Ответы (2)


удалить всю таблицу oauth:

php artisan migrate:rollback --step=5

и перенести все:

 php artisan migrate

и:

 php artisan passport:install --force
person Mehdi    schedule 22.10.2017

Убедитесь, что вы указали тот же URL-адрес http://app_golf.xiongmaojf.com/callback при создании нового Клиент OAuth в провайдере.

Это диалоговое окно может отображаться, когда ваш URL-адрес не совпадает.

Если это не поможет, попробуйте также сгенерировать новый ключ, используя:

php artisan passport:keys
person Vijay Kalathiya    schedule 27.10.2017