首页 > 解决方案 > Laravel - POSTMAN 登录内部服务器错误

问题描述

我使用 Laravel-5.8 作为应用程序的后端。我已经为端点编写了所有 Api。

Laravel:API控制器

 protected function guard()
{
    return Auth::guard();
}  

public function returnResponse($success, $data, $errorCode = 0, $message = false) {
    $response = array();
    $response['success'] = $success;
    $response['message'] = isset($message) ? $message : '';
    if ($errorCode) {
        $response['errorCode'] = isset($errorCode) ? $errorCode : 0;
    }
    $response['data'] = $data;
    return response()->json($response, 200);
}

public function login() {
    $authenticated = false;
    $remember = request('remember') ? true : false;
    if (Auth::guard('web')->attempt(['email' => request('email'), 'password' => request('password')], $remember)) {
        $authenticated = true;
    } 
    if ($authenticated == true) {
        $user = Auth::guard('web')->user();
        $date = date('Y-m-d');

        $success['userId'] = $user->id;
        $success['avatar'] = url('/storage/user') . '/' . $user->avatar;
        // $success['points'] = $user->userPoints->sum('points');
        $success['email'] = $user->email;
        $success['token'] = $user->createToken('MyApp')->accessToken;
        return $this->returnResponse(true, $success);
    } else {
        $success = array();
        return $this->returnResponse(false, $success, 1, 'Invalid User Credential');
    }
} 

api.php

Route::group([
], function () {
Route::post('login', 'ApiController@login');
Route::post('register', 'ApiController@register');
Route::post('forgetPassword', 'ApiController@forgetPassword');

Route::group([
  'middleware' => 'auth:api'
], function() {
    Route::get('logout', 'AuthController@logout');
    Route::get('user', 'AuthController@user');
});
});

当我在 POSTMAN 上测试登录 Post Request 时,出现如下错误:

登录错误

什么可能导致错误?

标签: laravelapipostman

解决方案


我认为您已在控制器中多次声明 index(),因此请检查是否有多次声明 index(),然后删除任何人。


推荐阅读