From 61b4aa1e5762ca9f212a414992f719be39681f4e Mon Sep 17 00:00:00 2001 From: Your Name Date: Sun, 25 Sep 2022 21:39:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Api/HomeController.php | 25 +++++++++++ app/Http/Controllers/Api/UrlController.php | 45 +++++++++++++++---- app/Http/Controllers/Api/UserController.php | 13 +++++- .../Middleware/Api/RefreshTokenMiddleware.php | 2 +- app/Models/Log.php | 14 ++++++ composer.json | 1 + composer.lock | 24 ++++------ config/cors.php | 6 +-- config/jwt.php | 2 +- .../2022_09_14_104729_create_jobs_table.php | 36 +++++++++++++++ routes/api.php | 12 +++-- 11 files changed, 144 insertions(+), 36 deletions(-) create mode 100644 app/Http/Controllers/Api/HomeController.php create mode 100644 app/Models/Log.php create mode 100644 database/migrations/2022_09_14_104729_create_jobs_table.php diff --git a/app/Http/Controllers/Api/HomeController.php b/app/Http/Controllers/Api/HomeController.php new file mode 100644 index 0000000..0efc3dd --- /dev/null +++ b/app/Http/Controllers/Api/HomeController.php @@ -0,0 +1,25 @@ +success(["urls"=>count($urls),"log"=>count($log)]); + } +} diff --git a/app/Http/Controllers/Api/UrlController.php b/app/Http/Controllers/Api/UrlController.php index 58f3d10..3a93baa 100644 --- a/app/Http/Controllers/Api/UrlController.php +++ b/app/Http/Controllers/Api/UrlController.php @@ -1,4 +1,5 @@ success($urls); } - public function add(Request $req){ - $urls = new Url; - //dd($req["name"]); - $urls->host="www"; - $urls->url="www.baidu.com"; - $urls->save(); - return $this->success($urls); + public function add(Request $req) + { + $hosts = $req->hosts; + foreach ($hosts as $v) { + $urls = new Url; + $urls->host = $v; + $urls->save(); + } + return $this->success(""); } -} \ No newline at end of file + public function del(Request $req) + { + $id = $req->id; + Url::where('id', $id)->delete(); + return $this->success(""); + } + public function set(Request $req) + { + $host = $req->host; + $url = $req->url; + $log = new Log; + $log->host = $host; + $log->url = $url; + $log->save(); + Url::where('host', $host)->update(['url' => $url]); + return $this->success(""); + } public function text() + { + //$users = DB::select('select * from `users` where `name` = giaogiao limit 1'); + return $this->success(""); + } +} diff --git a/app/Http/Controllers/Api/UserController.php b/app/Http/Controllers/Api/UserController.php index e363479..58920b1 100644 --- a/app/Http/Controllers/Api/UserController.php +++ b/app/Http/Controllers/Api/UserController.php @@ -36,6 +36,7 @@ class UserController extends Controller } //用户登录 public function login(Request $request){ + //dd($request->name); $token=Auth::claims(['guard'=>'api'])->attempt(['name'=>$request->name,'password'=>$request->password]); if($token) { //如果登陆,先检查原先是否有存token,有的话先失效,然后再存入最新的token @@ -47,15 +48,23 @@ class UserController extends Controller //因为让一个过期的token再失效,会抛出异常,所以我们捕捉异常,不需要做任何处理 } } - SaveLastTokenJob::dispatch($user,$token); + //SaveLastTokenJob::dispatch($user,$token); return $this->setStatusCode(201)->success(['token' => 'bearer ' . $token]); } - return $this->failed('账号或密码错误',400); + //return $this->failed('账号或密码错误',400); + return $this->setStatusCode(200)->success(["code"=>"400"]); } //用户退出 public function logout(){ Auth::logout(); return $this->success('退出成功...'); } + public function set(Request $req){ + $password = $req->password; + $user = Auth::user(); + $user->password=$password; + $user->save(); + return $this->success("成功"); + } } diff --git a/app/Http/Middleware/Api/RefreshTokenMiddleware.php b/app/Http/Middleware/Api/RefreshTokenMiddleware.php index 02e213d..4f455d2 100644 --- a/app/Http/Middleware/Api/RefreshTokenMiddleware.php +++ b/app/Http/Middleware/Api/RefreshTokenMiddleware.php @@ -63,7 +63,7 @@ class RefreshTokenMiddleware extends BaseMiddleware //刷新了token,将token存入数据库 $user = Auth::user(); - SaveLastTokenJob::dispatch($user,$token); + //SaveLastTokenJob::dispatch($user,$token); } catch (JWTException $exception) { // 如果捕获到此异常,即代表 refresh 也过期了,用户无法刷新令牌,需要重新登录。 diff --git a/app/Models/Log.php b/app/Models/Log.php new file mode 100644 index 0000000..258a02c --- /dev/null +++ b/app/Models/Log.php @@ -0,0 +1,14 @@ + env('CORS_ALLOW_CREDENTIAILS', true), // set "Access-Control-Allow-Credentials" 👉 string "false" or "true". + 'allow-credentials' => env('CORS_ALLOW_CREDENTIAILS', false), // set "Access-Control-Allow-Credentials" 👉 string "false" or "true". 'allow-headers' => ['*'], // ex: Content-Type, Accept, X-Requested-With - 'expose-headers' => ['Authorization'], + 'expose-headers' => [], 'origins' => ['*'], // ex: http://localhost 'methods' => ['*'], // ex: GET, POST, PUT, PATCH, DELETE 'max-age' => env('CORS_ACCESS_CONTROL_MAX_AGE', 0), 'laravel' => [ - 'allow-route-perfix' => env('CORS_LARAVEL_ALLOW_ROUTE_PERFIX', '*'), // The perfix is using \Illumante\Http\Request::is method. 👉 + 'allow-route-prefix' => env('CORS_LARAVEL_ALLOW_ROUTE_PREFIX', '*'), // The prefix is using \Illumante\Http\Request::is method. 👉 'route-group-mode' => env('CORS_LARAVEL_ROUTE_GROUP_MODE', false), ], ]; diff --git a/config/jwt.php b/config/jwt.php index e752efe..591a5f2 100644 --- a/config/jwt.php +++ b/config/jwt.php @@ -101,7 +101,7 @@ return [ | */ - 'ttl' => env('JWT_TTL', 600000), + 'ttl' => env('JWT_TTL', 6000000), /* |-------------------------------------------------------------------------- diff --git a/database/migrations/2022_09_14_104729_create_jobs_table.php b/database/migrations/2022_09_14_104729_create_jobs_table.php new file mode 100644 index 0000000..58d7715 --- /dev/null +++ b/database/migrations/2022_09_14_104729_create_jobs_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->string('queue')->index(); + $table->longText('payload'); + $table->unsignedTinyInteger('attempts'); + $table->unsignedInteger('reserved_at')->nullable(); + $table->unsignedInteger('available_at'); + $table->unsignedInteger('created_at'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('jobs'); + } +} diff --git a/routes/api.php b/routes/api.php index 21551c6..56a452e 100644 --- a/routes/api.php +++ b/routes/api.php @@ -14,10 +14,6 @@ use Illuminate\Http\Request; */ Route::namespace('Api')->prefix('v1')->middleware('cors')->group(function () { - Route::post('/url/add', 'UrlController@add'); - Route::post('/url/all', 'UrlController@index'); - Route::post('/url/set', 'UrlController@set'); - Route::post('/url/del', 'UrlController@del'); Route::middleware('api.guard')->group(function () { //用户注册 Route::post('/users', 'UserController@store')->name('users.store'); @@ -32,6 +28,14 @@ Route::namespace('Api')->prefix('v1')->middleware('cors')->group(function () { Route::get('/users/{user}', 'UserController@show')->name('users.show'); //用户退出 Route::get('/logout', 'UserController@logout')->name('users.logout'); + + Route::post('/url/add', 'UrlController@add'); + Route::post('/url/text', 'UrlController@text'); + Route::post('/url/all', 'UrlController@index'); + Route::post('/url/set', 'UrlController@set'); + Route::post('/url/del', 'UrlController@del'); + Route::post('/home/all', 'HomeController@index'); + Route::post('/user/set', 'UserController@set'); }); }); Route::middleware('admin.guard')->group(function () {