【发布时间】:2016-07-10 07:32:27
【问题描述】:
我正在使用Oauth-server-laravel 身份验证。
到目前为止我做了什么:
当我将错误的access_token 发布到我在 laravel 中创建的 API 时,它会给出以下响应,
{
"error": "access_denied",
"error_description": "The resource owner or authorization server denied the request."
}
我在路由中使用oauth作为中间件,如下所示,
Route::group(['namespace' => 'Modules\User\Http\Controllers', 'middleware' => 'oauth'], function () {
// Get User Profile Details
Route::post('getUserProfileDetail', 'UserController@getUserProfileDetail');
});
问题:
如果凭据错误,则 oauth 会自动使用默认消息进行响应,我想自定义该响应消息,
我有一半成功,如果凭据正确,那么它会调用在路由中指定的函数,并且我正在附加我想要发送的 mre 响应。
$response = $this->authorizer->issueAccessToken();
$code = 200; //Response OK
$response['result'] = 'success';
$response['user_id'] = $user['id'];
$response['email'] = $user['email'];
$response['name'] = $user['name'];
但是当凭据不正确时我无法发送它,因为它无法调用函数并将其默认响应发送给用户。
【问题讨论】:
-
OAuth 有自己的错误格式,但要更改消息,您需要覆盖 OAuthExceptionMiddleware
-
@ImtiazPabel 如果我这样做了,那么当我执行 composer update 时会发生什么,它将自动更新文件并且我的代码将再次覆盖......
标签: php laravel authentication oauth oauth-2.0