微调 登录 代码

This commit is contained in:
兔姬桑
2022-09-20 20:16:20 +08:00
parent 23c23998b5
commit bcd2da1bcb
4 changed files with 29 additions and 17 deletions

View File

@@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use App\Components\Helpers;
use App\Components\IP;
use App\Http\Requests\Auth\LoginRequest;
use App\Http\Requests\Auth\RegisterRequest;
use App\Models\EmailFilter;
use App\Models\Invite;
@@ -45,13 +46,9 @@ class AuthController extends Controller
return view('auth.login');
}
public function login(Request $request)
public function login(LoginRequest $request)
{
$validator = Validator::make($request->all(), ['username' => 'required', 'password' => 'required']);
if ($validator->fails()) {
return Redirect::back()->withInput()->withErrors($validator->errors());
}
$data = $request->validated();
// 是否校验验证码
$captcha = $this->check_captcha($request);
@@ -60,7 +57,7 @@ class AuthController extends Controller
}
// 验证账号并创建会话
if (! Auth::attempt($validator->validated(), $request->input('remember'))) {
if (! Auth::attempt($data, $request->has('remember'))) {
return Redirect::back()->withInput()->withErrors(trans('auth.error.login_failed'));
}
$user = Auth::getUser();

View File

@@ -1,10 +1,9 @@
<?php
namespace App\Http\Controllers\OAuth;
namespace App\Http\Controllers;
use App\Components\Helpers;
use App\Components\IP;
use App\Http\Controllers\Controller;
use App\Models\User;
use App\Models\UserOauth;
use Auth;
@@ -12,7 +11,7 @@ use Illuminate\Http\Request;
use Laravel\Socialite\Facades\Socialite;
use Str;
class BaseController extends Controller
class OAuthController extends Controller
{
public function route(Request $request, string $type)
{

View File

@@ -0,0 +1,16 @@
<?php
namespace App\Http\Requests\Auth;
use Illuminate\Foundation\Http\FormRequest;
class LoginRequest extends FormRequest
{
public function rules()
{
return [
'username' => 'required|'.(sysConfig('username_type') ?? 'email'),
'password' => 'required',
];
}
}

View File

@@ -18,13 +18,13 @@ Route::middleware(['isForbidden', 'affiliate', 'isMaintenance'])->group(function
Route::get('lang/{locale}', 'AuthController@switchLang')->name('lang'); // 语言切换
Route::get('login', 'AuthController@showLoginForm')->middleware('isSecurity')->name('login'); // 登录页面
Route::namespace('OAuth')->prefix('oauth')->name('oauth.')->group(function () { // 用户第三方登录默认登录/转跳方式
Route::get('{type}/login', 'BaseController@logining')->name('login');
Route::get('{type}/bind', 'BaseController@binding')->name('bind');
Route::get('{type}/register', 'BaseController@register')->name('register');
Route::get('{type}/redirect', 'BaseController@simple')->name('simple');
Route::get('{type}/unsubscribe', 'BaseController@unsubscribe')->name('unsubscribe');
Route::get('{type}/route', 'BaseController@route')->name('route');
Route::prefix('oauth')->name('oauth.')->group(function () { // 用户第三方登录默认登录/转跳方式
Route::get('{type}/login', 'OAuthController@logining')->name('login');
Route::get('{type}/bind', 'OAuthController@binding')->name('bind');
Route::get('{type}/register', 'OAuthController@register')->name('register');
Route::get('{type}/redirect', 'OAuthController@simple')->name('simple');
Route::get('{type}/unsubscribe', 'OAuthController@unsubscribe')->name('unsubscribe');
Route::get('{type}/route', 'OAuthController@route')->name('route');
});
Route::post('login', 'AuthController@login')->middleware('isSecurity'); // 登录