Laravel rest API在post请求中返回用户对象

时间:2017-07-30 09:37:28

标签: laravel api

我创建了一个用于登录的API,并在Laravel中注册了护照包。当我在邮递员中调用登录网址时,它会返回key_tokenrefresh tokenexpired_date。 但我想要在json中返回授权用户信息(例如用户名和密码和电子邮件)。

我需要这个,因为手机团队想要整合我的网络应用程序。 登录控制器方法:

 public function login(Request $request)
    {
        $this->validate($request,[
            'username'=>'required',
            'password'=>'required'
        ]);

        $params = [
            'grant_type'=>'password',
            'client_id'=>$this->client->id,
            'client_secret'=>$this->client->secret,
            'username'=>request('username'),
            'password'=>request('password'),
            'scope'=>'*'
        ];
        $request->request->add($params);
        $proxy=Request::create('oauth/token','POST');


        return Route::dispatch($proxy);
}

1 个答案:

答案 0 :(得分:0)

在我看来,最好的方法是创建另一个返回经过身份验证的用户的URI。这样,客户端登录然后执行GET请求以获取经过身份验证的用户。我只想将此URI设置为/user。 Laravel方面,你只需创建一条这样的路线:

Route::get('/user', function (Request $request) {
    return $request->user();
})->middleware('auth:api');

顺便说一下,这就是GitHub API的工作方式。

希望有所帮助。