Php 在Laravel 5中创建用户
因此,我将使用JSON web标记关注这一点。我遇到了一个问题 下面是创建用户的方式:Php 在Laravel 5中创建用户,php,authentication,laravel-5,Php,Authentication,Laravel 5,因此,我将使用JSON web标记关注这一点。我遇到了一个问题 下面是创建用户的方式: Route::post('/signup', function () { $credentials = Input::only('email', 'password','name'); try { $user = User::create($credentials); } catch (Exception $e) { return Response::json(
Route::post('/signup', function () {
$credentials = Input::only('email', 'password','name');
try {
$user = User::create($credentials);
} catch (Exception $e) {
return Response::json(['error' => 'User already exists.'], Illuminate\Http\Response::HTTP_CONFLICT);
}
$token = JWTAuth::fromUser($user);
return Response::json(compact('token'));
});
问题是,User::create($credentials)
不会加密密码,这意味着登录将始终失败。我通过使用Laravel的默认注册发现了这一点
我的问题是,如何创建一个以正确方式创建密码的新用户?您必须使用。试试这个:
Route::post('/signup', function () {
$credentials = Input::only('email', 'password','name');
$credentials['password'] = Hash::make($credentials['password']);
try {
$user = User::create($credentials);
} catch (Exception $e) {
return Response::json(['error' => 'User already exists.'], Illuminate\Http\Response::HTTP_CONFLICT);
}
$token = JWTAuth::fromUser($user);
return Response::json(compact('token'));
});