Laravel Passport 错误 - RequestException.php 第 107 行中的 ServerException
Posted
技术标签:
【中文标题】Laravel Passport 错误 - RequestException.php 第 107 行中的 ServerException【英文标题】:Laravel Passport Error - ServerException in RequestException.php line 107 【发布时间】:2017-02-03 01:16:06 【问题描述】:请帮忙。
我按照教程 What's New in Laravel 5.3: Laravel Passport (https://laracasts.com/series/whats-new-in-laravel-5-3/episodes/13) 一步一步地学习,但我遇到了这个错误:
RequestException.php 第 107 行中的 ServerException:
服务器错误:POST http://latest.dev/oauth/token
导致 500 Internal Server Error
响应:
SQLSTATE [42S02]:未找到基表或视图:1146 表“consumer.oauth_clients”不存在(SQL:select * from `oa(截断...)
consumer.dev
使用 Illuminate\Http\Request; 路线::get('/', function () $query = http_build_query([ 'client_id' => 4, 'redirect_uri' => 'http://consumer.dev/callback', 'response_type' => '代码', '范围' => '', ]); return redirect('http://latest.dev/oauth/authorize?'.$query); ); Route::get('/callback', function(Request $request) $http = 新的 GuzzleHttp\Client; $response = $http->post('http://latest.dev/oauth/token', [ 'form_params' => [ 'grant_type' => 'authorization_code', 'client_id' => 4, 'client_secret' => 'a8OifFPH38rMi1I6vjmV3O8XD55hAk2FG4f95j9W', 'redirect_uri' => 'http://consumer.dev/callback', '代码' => $request-> 代码, ], ]); 返回 json_decode((string) $response->getBody(), true); );【问题讨论】:
您能否确认您已检查您是否拥有护照所需的迁移,并且您运行了 artisan migrate? @tam 我在 consumer.dev 项目中遵循了完全相同的步骤: composer 需要 laravel/passport、迁移、passport:install。基本上,创建两个几乎相同的项目。现在它工作正常。它解决了我的问题,但我不知道是否是最好的解决方案。 Taylor 应该解释我们需要在 consumer.dev 项目上创建哪些表(对于像我这样的初学者)。我们需要在两个项目中使用相同的表格吗?我们需要遵循相同的步骤吗?谢谢! 我遇到了像你这样的问题..你解决了吗? @DanielListyoEmanuel 在 consumer.dev 上执行相同的步骤,而不是迁移。如果您为两个项目(oauth_clients、oauth_access_tokens 等)创建相同的表,它就可以工作。 【参考方案1】:运行以下命令
php artisan serve
并将 URL 链接替换为由 artisan serve
命令创建的新 URL。
再试一次 - 然后它会工作。
【讨论】:
以上是关于Laravel Passport 错误 - RequestException.php 第 107 行中的 ServerException的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5.3 Passport - Vue 错误:评估表达式时出错
实时主机上的Laravel Passport安装错误[重复]
req.session.passport 为空,未调用 deserializeUser - ExpressJS,Passport
Passport.authenticate 导出-> passport.authenticate(一些东西)(req,res,next)?