【发布时间】:2020-01-11 01:52:12
【问题描述】:
我在 Laravel-5.8 中为用户登录编写了 POST 请求端点。 这是文件的位置:
localhost:8888/tsl-clientportal-app/clientportal-backend
AuthCoontroller.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Carbon\Carbon;
use App\User;
use App\Notifications\SignupActivate;
use Avatar;
use Storage;
class AuthController extends Controller
{
public function login(Request $request)
{
$request->validate([
'email' => 'required|string|email',
'password' => 'required|string',
'remember_me' => 'boolean'
]);
$credentials = request(['email', 'password']);
$credentials['active'] = 1;
$credentials['deleted_at'] = null;
if(!Auth::attempt($credentials))
return response()->json([
'message' => 'Unauthorized'
], 401);
$user = $request->user();
$tokenResult = $user->createToken('Personal Access Token');
$token = $tokenResult->token;
if ($request->remember_me)
$token->expires_at = Carbon::now()->addWeeks(13);
$token->save();
return response()->json([
'access_token' => $tokenResult->accessToken,
'token_type' => 'Bearer',
'expires_at' => Carbon::parse($tokenResult->token->expires_at)->toDateTimeString(),
'data' => $user
], 200);
}
}
api.php
Route::group([
'prefix' => 'auth'
], function () {
Route::post('login', 'AuthController@login');
Route::post('signup', 'AuthController@signup');
Route::get('signup/activate/{token}', 'AuthController@signupActivate');
Route::group([
'middleware' => 'auth:api'
], function() {
Route::get('logout', 'AuthController@logout');
Route::get('user', 'AuthController@user');
});
});
当我在 POSTMAN 上测试请求时,我希望看到成功的结果。但是我得到了下图所示的错误:
【问题讨论】:
-
尝试以json格式发送数据。
-
@farooq - 我该怎么做?
-
你在 laravel 错误日志中得到任何错误吗? storage/logs/laravel.log
-
@rypskar - 不,我没有看到任何错误
-
您是否也检查了您的网络服务器日志?