diff --git a/.gitignore b/.gitignore index b3da0af..4c49bd7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ .env -.history \ No newline at end of file diff --git a/.history/.env_20230101172316 b/.history/.env_20230101172316 deleted file mode 100644 index e69de29..0000000 diff --git a/.history/.env_20230101172348 b/.history/.env_20230101172348 deleted file mode 100644 index 9d49f06..0000000 --- a/.history/.env_20230101172348 +++ /dev/null @@ -1 +0,0 @@ -proxy = 45.150.224.46:19100 \ No newline at end of file diff --git a/.history/.env_20230101173049 b/.history/.env_20230101173049 deleted file mode 100644 index 95b8119..0000000 --- a/.history/.env_20230101173049 +++ /dev/null @@ -1 +0,0 @@ -proxy = 10.1.5.2:19100 \ No newline at end of file diff --git a/.history/.env_20230101181726 b/.history/.env_20230101181726 deleted file mode 100644 index 4d71776..0000000 --- a/.history/.env_20230101181726 +++ /dev/null @@ -1,5 +0,0 @@ -proxy = 10.1.5.2:19100 -redis.host = 121.228.166.201 -redis.password = qi2005112 -redis.port = 16379 -redis.database = 17 \ No newline at end of file diff --git a/.history/.env_20230101182453 b/.history/.env_20230101182453 deleted file mode 100644 index 6bb6837..0000000 --- a/.history/.env_20230101182453 +++ /dev/null @@ -1,5 +0,0 @@ -proxy = 10.1.5.2:19100 -redis.host = 121.228.166.201 -redis.password = Qi2005112! -redis.port = 16379 -redis.database = 17 \ No newline at end of file diff --git a/.history/.env_20230101182642 b/.history/.env_20230101182642 deleted file mode 100644 index 4e27d42..0000000 --- a/.history/.env_20230101182642 +++ /dev/null @@ -1,5 +0,0 @@ -proxy = 10.1.5.2:19100 -redis.host = 121.228.166.201 -redispassword = Qi2005112! -redis.port = 16379 -redis.database = 17 \ No newline at end of file diff --git a/.history/.env_20230101182748 b/.history/.env_20230101182748 deleted file mode 100644 index f417c89..0000000 --- a/.history/.env_20230101182748 +++ /dev/null @@ -1,5 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 \ No newline at end of file diff --git a/.history/.env_20230101191643 b/.history/.env_20230101191643 deleted file mode 100644 index 6eee5bd..0000000 --- a/.history/.env_20230101191643 +++ /dev/null @@ -1,7 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=http://loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion/ -Zlibrary=http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/ \ No newline at end of file diff --git a/.history/.env_20230101203601 b/.history/.env_20230101203601 deleted file mode 100644 index d8ca361..0000000 --- a/.history/.env_20230101203601 +++ /dev/null @@ -1,8 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=http://loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion/ -Zlibrary=http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/ -version=1.0.1 \ No newline at end of file diff --git a/.history/.env_20230101205534 b/.history/.env_20230101205534 deleted file mode 100644 index a430489..0000000 --- a/.history/.env_20230101205534 +++ /dev/null @@ -1,8 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=http://loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion -Zlibrary=http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion -version=1.0.1 \ No newline at end of file diff --git a/.history/.env_20230101210425 b/.history/.env_20230101210425 deleted file mode 100644 index 0294260..0000000 --- a/.history/.env_20230101210425 +++ /dev/null @@ -1,8 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion -Zlibrary=bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion -version=1.0.1 \ No newline at end of file diff --git a/.history/.env_20230101220200 b/.history/.env_20230101220200 deleted file mode 100644 index 59bd9cd..0000000 --- a/.history/.env_20230101220200 +++ /dev/null @@ -1,8 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion -Zlibrary=bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/ -version=1.0.1 \ No newline at end of file diff --git a/.history/.env_20230101220201 b/.history/.env_20230101220201 deleted file mode 100644 index 0294260..0000000 --- a/.history/.env_20230101220201 +++ /dev/null @@ -1,8 +0,0 @@ -proxy=10.1.5.2:19100 -RedisHost=121.228.166.201 -RedisPassword=Qi2005112! -RedisPort=16379 -RedisDatabase=17 -ZlibraryLogin=loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion -Zlibrary=bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion -version=1.0.1 \ No newline at end of file diff --git a/.history/.env_20230101231839.example b/.history/.env_20230101231839.example deleted file mode 100644 index e69de29..0000000 diff --git a/.history/.env_20230101231841.example b/.history/.env_20230101231841.example deleted file mode 100644 index 593161e..0000000 --- a/.history/.env_20230101231841.example +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/.env_20230101232035.example b/.history/.env_20230101232035.example deleted file mode 100644 index 63cf76e..0000000 --- a/.history/.env_20230101232035.example +++ /dev/null @@ -1,23 +0,0 @@ -proxy= -#Tor的Socks5代理 - -RedisHost= -#Redis主机名 - -RedisPassword= -#Redis密码 - -RedisPort=6379 -#Redis端口 - -RedisDatabase=1 -#Redis数据库号 - -ZlibraryLogin=loginzlib2vrak5zzpcocc3ouizykn6k5qecgj2tzlnab5wcbqhembyd.onion -#除非Zlib的洋葱域名改变否则无需更改 - -Zlibrary=bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion -#除非Zlib的洋葱域名改变否则无需更改 - -version=1.0.1 -#无需更改 \ No newline at end of file diff --git a/.history/.gitignore_20230101172312 b/.history/.gitignore_20230101172312 deleted file mode 100644 index e69de29..0000000 diff --git a/.history/.gitignore_20230101172323 b/.history/.gitignore_20230101172323 deleted file mode 100644 index 2eea525..0000000 --- a/.history/.gitignore_20230101172323 +++ /dev/null @@ -1 +0,0 @@ -.env \ No newline at end of file diff --git a/.history/app/controller/File_20230102143247.php b/.history/app/controller/File_20230102143247.php deleted file mode 100644 index e69de29..0000000 diff --git a/.history/app/controller/File_20230102143249.php b/.history/app/controller/File_20230102143249.php deleted file mode 100644 index 593161e..0000000 --- a/.history/app/controller/File_20230102143249.php +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/app/controller/File_20230102143332.php b/.history/app/controller/File_20230102143332.php deleted file mode 100644 index b1aa211..0000000 --- a/.history/app/controller/File_20230102143332.php +++ /dev/null @@ -1,17 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin' - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102154544.php b/.history/app/controller/File_20230102154544.php deleted file mode 100644 index ff74311..0000000 --- a/.history/app/controller/File_20230102154544.php +++ /dev/null @@ -1,36 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102165530.php b/.history/app/controller/File_20230102165530.php deleted file mode 100644 index 795aa82..0000000 --- a/.history/app/controller/File_20230102165530.php +++ /dev/null @@ -1,56 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $head=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=40){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102170445.php b/.history/app/controller/File_20230102170445.php deleted file mode 100644 index 6819b74..0000000 --- a/.history/app/controller/File_20230102170445.php +++ /dev/null @@ -1,56 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $head=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102171742.php b/.history/app/controller/File_20230102171742.php deleted file mode 100644 index 63c00ea..0000000 --- a/.history/app/controller/File_20230102171742.php +++ /dev/null @@ -1,64 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')) - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.base64_encode($path),'Time',time()); - $redis->hset('BookCache_'.base64_encode($path),'Date',date("Y/m/d H:i:s")); - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - $filepath=base_path().'/books/'.date("Y/m/").$name.'bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102171809.php b/.history/app/controller/File_20230102171809.php deleted file mode 100644 index ec3874e..0000000 --- a/.history/app/controller/File_20230102171809.php +++ /dev/null @@ -1,64 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.base64_encode($path),'Time',time()); - $redis->hset('BookCache_'.base64_encode($path),'Date',date("Y/m/d H:i:s")); - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - $filepath=base_path().'/books/'.date("Y/m/").$name.'bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102171818.php b/.history/app/controller/File_20230102171818.php deleted file mode 100644 index a2e608f..0000000 --- a/.history/app/controller/File_20230102171818.php +++ /dev/null @@ -1,65 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.base64_encode($path),'Time',time()); - $redis->hset('BookCache_'.base64_encode($path),'Date',date("Y/m/d H:i:s")); - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - $filepath=base_path().'/books/'.date("Y/m/").$name.'bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102172707.php b/.history/app/controller/File_20230102172707.php deleted file mode 100644 index 032cb04..0000000 --- a/.history/app/controller/File_20230102172707.php +++ /dev/null @@ -1,72 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102172825.php b/.history/app/controller/File_20230102172825.php deleted file mode 100644 index 176c691..0000000 --- a/.history/app/controller/File_20230102172825.php +++ /dev/null @@ -1,74 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102172833.php b/.history/app/controller/File_20230102172833.php deleted file mode 100644 index 04238bb..0000000 --- a/.history/app/controller/File_20230102172833.php +++ /dev/null @@ -1,75 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - - $file=base_path().'/books/'.$name.'bin'; - if(file_exists($file)){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>trans_byte(filesize($file))]); - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102173122.php b/.history/app/controller/File_20230102173122.php deleted file mode 100644 index e180cb2..0000000 --- a/.history/app/controller/File_20230102173122.php +++ /dev/null @@ -1,79 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - $file=base_path().'/books/'.$name.'bin'; - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']) - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102173124.php b/.history/app/controller/File_20230102173124.php deleted file mode 100644 index 3fd3a7d..0000000 --- a/.history/app/controller/File_20230102173124.php +++ /dev/null @@ -1,79 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - $file=base_path().'/books/'.$name.'bin'; - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102173125.php b/.history/app/controller/File_20230102173125.php deleted file mode 100644 index be1fc42..0000000 --- a/.history/app/controller/File_20230102173125.php +++ /dev/null @@ -1,79 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - if($path=='blank'){ - return json(['code'=>500,'msg'=>'缺少参数']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - $file=base_path().'/books/'.$name.'bin'; - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录']); - } - $path=$request->input('path','blank'); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102173220.php b/.history/app/controller/File_20230102173220.php deleted file mode 100644 index f09898c..0000000 --- a/.history/app/controller/File_20230102173220.php +++ /dev/null @@ -1,82 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - $file=base_path().'/books/'.$name.'bin'; - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - $name=base64_encode($path); - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - public function download(Request $request) - { - - - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102173627.php b/.history/app/controller/File_20230102173627.php deleted file mode 100644 index 42a2301..0000000 --- a/.history/app/controller/File_20230102173627.php +++ /dev/null @@ -1,97 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102174259.php b/.history/app/controller/File_20230102174259.php deleted file mode 100644 index 5ae6157..0000000 --- a/.history/app/controller/File_20230102174259.php +++ /dev/null @@ -1,99 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102174312.php b/.history/app/controller/File_20230102174312.php deleted file mode 100644 index 218c033..0000000 --- a/.history/app/controller/File_20230102174312.php +++ /dev/null @@ -1,99 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102182057.php b/.history/app/controller/File_20230102182057.php deleted file mode 100644 index acca18c..0000000 --- a/.history/app/controller/File_20230102182057.php +++ /dev/null @@ -1,99 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102183433.php b/.history/app/controller/File_20230102183433.php deleted file mode 100644 index a939255..0000000 --- a/.history/app/controller/File_20230102183433.php +++ /dev/null @@ -1,99 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exist('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102184127.php b/.history/app/controller/File_20230102184127.php deleted file mode 100644 index 70017c1..0000000 --- a/.history/app/controller/File_20230102184127.php +++ /dev/null @@ -1,99 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102184835.php b/.history/app/controller/File_20230102184835.php deleted file mode 100644 index e23761b..0000000 --- a/.history/app/controller/File_20230102184835.php +++ /dev/null @@ -1,100 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round(($head->header('Content-Length')/1048576),2); - echo($size); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185014.php b/.history/app/controller/File_20230102185014.php deleted file mode 100644 index fb69aca..0000000 --- a/.history/app/controller/File_20230102185014.php +++ /dev/null @@ -1,100 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $size=round((number_format($head->header('Content-Length'))/1048576),2); - echo($size); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185148.php b/.history/app/controller/File_20230102185148.php deleted file mode 100644 index 29f58df..0000000 --- a/.history/app/controller/File_20230102185148.php +++ /dev/null @@ -1,101 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - echo($size); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185322.php b/.history/app/controller/File_20230102185322.php deleted file mode 100644 index 4beb65a..0000000 --- a/.history/app/controller/File_20230102185322.php +++ /dev/null @@ -1,101 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url=getenv('Zlibrary')."$path"; - echo($url); - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185353.php b/.history/app/controller/File_20230102185353.php deleted file mode 100644 index 3b651b4..0000000 --- a/.history/app/controller/File_20230102185353.php +++ /dev/null @@ -1,101 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url='http://'.getenv('Zlibrary')."$path"; - echo($url); - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185511.php b/.history/app/controller/File_20230102185511.php deleted file mode 100644 index b80049f..0000000 --- a/.history/app/controller/File_20230102185511.php +++ /dev/null @@ -1,100 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url='http://'.getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102185714.php b/.history/app/controller/File_20230102185714.php deleted file mode 100644 index a716058..0000000 --- a/.history/app/controller/File_20230102185714.php +++ /dev/null @@ -1,100 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url='http://'.getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url)->body(); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/File_20230102190051.php b/.history/app/controller/File_20230102190051.php deleted file mode 100644 index 2f4777d..0000000 --- a/.history/app/controller/File_20230102190051.php +++ /dev/null @@ -1,101 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $name=base64_encode($path); - $redis = Redis::connection('default'); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - return json(['code'=>200, 'msg'=>'找到文件', 'size'=>$redis->hget('BookCache_'.$name,'Size'),'name'=>$redis->hget('BookCache_'.$name,'Name')]); - }else{ - return json(['code'=>202,'msg'=>'文件下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - } - public function download(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $url='http://'.getenv('Zlibrary')."$path"; - $get=Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary')); - $head=$get->head($url); - $ContentLength=(int)$head->header('Content-Length'); - $size=round(($ContentLength/1048576),2); - if($size>=30){ - return json(['code'=>500,'msg'=>'文件太大了!']); - } - if($head->header('Content-Type')=='text/html; charset=UTF-8'){ - return json(['code'=>404,'msg'=>'链接错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - $redis->hset('BookCache_'.$name,'Time',time()); - $redis->hset('BookCache_'.$name,'Date',date("Y/m/d H:i:s")); - $redis->hset('BookCache_'.$name,'Status','Downloading'); - if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); - } - - $filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; - $return=$get->get($url)->body(); - $file = fopen("$filepath","w"); - fwrite($file,$return); - fclose($file); - $filerealname=explode('"',explode(";",$head->header('Content-Disposition'))[1])[1]; - $redis->hset('BookCache_'.$name,'Path',$filepath); - $redis->hset('BookCache_'.$name,'Size',$size); - $redis->hset('BookCache_'.$name,'Name',$filerealname); - $redis->hset('BookCache_'.$name,'Status','OK'); - return json(['code'=>200,'name'=>"$filerealname",'size'=>"$size"]); - } - public function get(Request $request) - { - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->input('path','blank'); - if($key=='blank' || $id=='blank'){ - return json(['code'=>509,'msg'=>'未登录或参数错误']); - } - $redis = Redis::connection('default'); - $name=base64_encode($path); - if($redis->exists('BookCache_'.$name)){ - if($redis->hget('BookCache_'.$name,'Status')=='OK'){ - $redis->hset('BookCache_'.$name,'LastDown',time()); - return response()->download($redis->hget('BookCache_'.$name,'Path'),$redis->hget('BookCache_'.$name,'Name')); - }else{ - return json(['code'=>202,'msg'=>'文件仍在下载中']); - } - }else { - return json(['code'=>201, 'msg'=>'未找到文件']); - } - - } - - -} \ No newline at end of file diff --git a/.history/app/controller/IndexController_20221212162407.php b/.history/app/controller/IndexController_20221212162407.php deleted file mode 100644 index 31e1c43..0000000 --- a/.history/app/controller/IndexController_20221212162407.php +++ /dev/null @@ -1,24 +0,0 @@ - 'webman']); - } - - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101173342.php b/.history/app/controller/IndexController_20230101173342.php deleted file mode 100644 index 24c3cb6..0000000 --- a/.history/app/controller/IndexController_20230101173342.php +++ /dev/null @@ -1,24 +0,0 @@ - 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101182420.php b/.history/app/controller/IndexController_20230101182420.php deleted file mode 100644 index e29adc8..0000000 --- a/.history/app/controller/IndexController_20230101182420.php +++ /dev/null @@ -1,28 +0,0 @@ - 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101183521.php b/.history/app/controller/IndexController_20230101183521.php deleted file mode 100644 index 9fdbe0b..0000000 --- a/.history/app/controller/IndexController_20230101183521.php +++ /dev/null @@ -1,40 +0,0 @@ -build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101183610.php b/.history/app/controller/IndexController_20230101183610.php deleted file mode 100644 index 4053b29..0000000 --- a/.history/app/controller/IndexController_20230101183610.php +++ /dev/null @@ -1,41 +0,0 @@ -build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101184256.php b/.history/app/controller/IndexController_20230101184256.php deleted file mode 100644 index da161cd..0000000 --- a/.history/app/controller/IndexController_20230101184256.php +++ /dev/null @@ -1,42 +0,0 @@ -build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101190155.php b/.history/app/controller/IndexController_20230101190155.php deleted file mode 100644 index a1249be..0000000 --- a/.history/app/controller/IndexController_20230101190155.php +++ /dev/null @@ -1,73 +0,0 @@ -post('username','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101192447.php b/.history/app/controller/IndexController_20230101192447.php deleted file mode 100644 index 264683e..0000000 --- a/.history/app/controller/IndexController_20230101192447.php +++ /dev/null @@ -1,82 +0,0 @@ -post('username','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101192731.php b/.history/app/controller/IndexController_20230101192731.php deleted file mode 100644 index ac15164..0000000 --- a/.history/app/controller/IndexController_20230101192731.php +++ /dev/null @@ -1,82 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101192934.php b/.history/app/controller/IndexController_20230101192934.php deleted file mode 100644 index b76a1ee..0000000 --- a/.history/app/controller/IndexController_20230101192934.php +++ /dev/null @@ -1,85 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(!empty($return->errors)){ - return json(['code' => 502, 'msg' => '登陆失败:']); - } - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101193243.php b/.history/app/controller/IndexController_20230101193243.php deleted file mode 100644 index 791f593..0000000 --- a/.history/app/controller/IndexController_20230101193243.php +++ /dev/null @@ -1,85 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101194651.php b/.history/app/controller/IndexController_20230101194651.php deleted file mode 100644 index 1dfc16c..0000000 --- a/.history/app/controller/IndexController_20230101194651.php +++ /dev/null @@ -1,94 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],7200,'/')->cookie('key', $params['remix_userkey'],7200,'/'); - - return view('login'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101194656.php b/.history/app/controller/IndexController_20230101194656.php deleted file mode 100644 index 83842fb..0000000 --- a/.history/app/controller/IndexController_20230101194656.php +++ /dev/null @@ -1,92 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],7200,'/')->cookie('key', $params['remix_userkey'],7200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101194904.php b/.history/app/controller/IndexController_20230101194904.php deleted file mode 100644 index d8febbf..0000000 --- a/.history/app/controller/IndexController_20230101194904.php +++ /dev/null @@ -1,92 +0,0 @@ -post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101202315.php b/.history/app/controller/IndexController_20230101202315.php deleted file mode 100644 index 75c4d6c..0000000 --- a/.history/app/controller/IndexController_20230101202315.php +++ /dev/null @@ -1,96 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - print_r($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101203357.php b/.history/app/controller/IndexController_20230101203357.php deleted file mode 100644 index 3b18c1b..0000000 --- a/.history/app/controller/IndexController_20230101203357.php +++ /dev/null @@ -1,95 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101205503.php b/.history/app/controller/IndexController_20230101205503.php deleted file mode 100644 index 8c225b3..0000000 --- a/.history/app/controller/IndexController_20230101205503.php +++ /dev/null @@ -1,96 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->get('route','/') - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101205507.php b/.history/app/controller/IndexController_20230101205507.php deleted file mode 100644 index 958c68a..0000000 --- a/.history/app/controller/IndexController_20230101205507.php +++ /dev/null @@ -1,96 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->get('route','') - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101205513.php b/.history/app/controller/IndexController_20230101205513.php deleted file mode 100644 index 3562201..0000000 --- a/.history/app/controller/IndexController_20230101205513.php +++ /dev/null @@ -1,93 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->get('route',''); - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101205522.php b/.history/app/controller/IndexController_20230101205522.php deleted file mode 100644 index 454ab0f..0000000 --- a/.history/app/controller/IndexController_20230101205522.php +++ /dev/null @@ -1,93 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->get('route','/'); - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101205548.php b/.history/app/controller/IndexController_20230101205548.php deleted file mode 100644 index 94b53ff..0000000 --- a/.history/app/controller/IndexController_20230101205548.php +++ /dev/null @@ -1,93 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->get('route','/'); - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101210439.php b/.history/app/controller/IndexController_20230101210439.php deleted file mode 100644 index 2835907..0000000 --- a/.history/app/controller/IndexController_20230101210439.php +++ /dev/null @@ -1,97 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->route; - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->get($url) - - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url=getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101210449.php b/.history/app/controller/IndexController_20230101210449.php deleted file mode 100644 index 2d6a0d0..0000000 --- a/.history/app/controller/IndexController_20230101210449.php +++ /dev/null @@ -1,97 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->route; - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->get($url) - - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101210659.php b/.history/app/controller/IndexController_20230101210659.php deleted file mode 100644 index 49218ca..0000000 --- a/.history/app/controller/IndexController_20230101210659.php +++ /dev/null @@ -1,98 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->route; - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $response = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215122.php b/.history/app/controller/IndexController_20230101215122.php deleted file mode 100644 index 30091cc..0000000 --- a/.history/app/controller/IndexController_20230101215122.php +++ /dev/null @@ -1,107 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->route; - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215326.php b/.history/app/controller/IndexController_20230101215326.php deleted file mode 100644 index 65a31ed..0000000 --- a/.history/app/controller/IndexController_20230101215326.php +++ /dev/null @@ -1,110 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->route; - print_r($route); - return response('123'); - - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215401.php b/.history/app/controller/IndexController_20230101215401.php deleted file mode 100644 index bfea132..0000000 --- a/.history/app/controller/IndexController_20230101215401.php +++ /dev/null @@ -1,110 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->path(); - print_r($route); - return response('123'); - - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215431.php b/.history/app/controller/IndexController_20230101215431.php deleted file mode 100644 index 96203aa..0000000 --- a/.history/app/controller/IndexController_20230101215431.php +++ /dev/null @@ -1,110 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $route=$request->uri(); - print_r($route); - return response('123'); - - $path=$route->getPath(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215457.php b/.history/app/controller/IndexController_20230101215457.php deleted file mode 100644 index 1386c93..0000000 --- a/.history/app/controller/IndexController_20230101215457.php +++ /dev/null @@ -1,106 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - $url='http://'.getenv('ZlibraryLogin').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101215743.php b/.history/app/controller/IndexController_20230101215743.php deleted file mode 100644 index 562a297..0000000 --- a/.history/app/controller/IndexController_20230101215743.php +++ /dev/null @@ -1,106 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101220103.php b/.history/app/controller/IndexController_20230101220103.php deleted file mode 100644 index 22de6d3..0000000 --- a/.history/app/controller/IndexController_20230101220103.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101220342.php b/.history/app/controller/IndexController_20230101220342.php deleted file mode 100644 index 193cb6e..0000000 --- a/.history/app/controller/IndexController_20230101220342.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101220540.php b/.history/app/controller/IndexController_20230101220540.php deleted file mode 100644 index 32e94ca..0000000 --- a/.history/app/controller/IndexController_20230101220540.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.$request->host();)->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101220542.php b/.history/app/controller/IndexController_20230101220542.php deleted file mode 100644 index 6cf499a..0000000 --- a/.history/app/controller/IndexController_20230101220542.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.$request->host())->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101221211.php b/.history/app/controller/IndexController_20230101221211.php deleted file mode 100644 index 8aa5ad5..0000000 --- a/.history/app/controller/IndexController_20230101221211.php +++ /dev/null @@ -1,110 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - echo($url); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.$request->host())->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101221246.php b/.history/app/controller/IndexController_20230101221246.php deleted file mode 100644 index 648c1d2..0000000 --- a/.history/app/controller/IndexController_20230101221246.php +++ /dev/null @@ -1,110 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - echo($url); - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,'.'.getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101221441.php b/.history/app/controller/IndexController_20230101221441.php deleted file mode 100644 index 3c3d7cf..0000000 --- a/.history/app/controller/IndexController_20230101221441.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->withCookies($auth,getenv('ZlibraryLogin'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101221736.php b/.history/app/controller/IndexController_20230101221736.php deleted file mode 100644 index c65e103..0000000 --- a/.history/app/controller/IndexController_20230101221736.php +++ /dev/null @@ -1,109 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($return->body()); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101222759.php b/.history/app/controller/IndexController_20230101222759.php deleted file mode 100644 index 8f515e5..0000000 --- a/.history/app/controller/IndexController_20230101222759.php +++ /dev/null @@ -1,112 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=utf-8'){ - $back='
退出
'.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101222959.php b/.history/app/controller/IndexController_20230101222959.php deleted file mode 100644 index 03c180d..0000000 --- a/.history/app/controller/IndexController_20230101222959.php +++ /dev/null @@ -1,112 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=utf-8'){ - $back='
退出
'.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101223138.php b/.history/app/controller/IndexController_20230101223138.php deleted file mode 100644 index c7c860c..0000000 --- a/.history/app/controller/IndexController_20230101223138.php +++ /dev/null @@ -1,113 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=utf-8'){ - $back='
退出
'.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101223213.php b/.history/app/controller/IndexController_20230101223213.php deleted file mode 100644 index 85486fa..0000000 --- a/.history/app/controller/IndexController_20230101223213.php +++ /dev/null @@ -1,114 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=utf-8'){ - $back='
退出
'.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101223238.php b/.history/app/controller/IndexController_20230101223238.php deleted file mode 100644 index 8f47a22..0000000 --- a/.history/app/controller/IndexController_20230101223238.php +++ /dev/null @@ -1,114 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $back='
退出
'.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101224226.php b/.history/app/controller/IndexController_20230101224226.php deleted file mode 100644 index 99d11a9..0000000 --- a/.history/app/controller/IndexController_20230101224226.php +++ /dev/null @@ -1,123 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101224323.php b/.history/app/controller/IndexController_20230101224323.php deleted file mode 100644 index 925a515..0000000 --- a/.history/app/controller/IndexController_20230101224323.php +++ /dev/null @@ -1,123 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101224742.php b/.history/app/controller/IndexController_20230101224742.php deleted file mode 100644 index 7a77c82..0000000 --- a/.history/app/controller/IndexController_20230101224742.php +++ /dev/null @@ -1,123 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101224840.php b/.history/app/controller/IndexController_20230101224840.php deleted file mode 100644 index fbd7936..0000000 --- a/.history/app/controller/IndexController_20230101224840.php +++ /dev/null @@ -1,123 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101225029.php b/.history/app/controller/IndexController_20230101225029.php deleted file mode 100644 index c7d74ef..0000000 --- a/.history/app/controller/IndexController_20230101225029.php +++ /dev/null @@ -1,123 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function json(Request $request) - { - return json(['code' => 0, 'msg' => 'ok']); - } - -} diff --git a/.history/app/controller/IndexController_20230101230759.php b/.history/app/controller/IndexController_20230101230759.php deleted file mode 100644 index da26684..0000000 --- a/.history/app/controller/IndexController_20230101230759.php +++ /dev/null @@ -1,127 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id', -1); - $response->cookie('key', -1); - $response->header('Location', '/login'); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101230912.php b/.history/app/controller/IndexController_20230101230912.php deleted file mode 100644 index 835cf33..0000000 --- a/.history/app/controller/IndexController_20230101230912.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id', -1); - $response->cookie('key', -1); - $response->header('Location', '/login'); - $response->withBody('302'); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231109.php b/.history/app/controller/IndexController_20230101231109.php deleted file mode 100644 index dca8e15..0000000 --- a/.history/app/controller/IndexController_20230101231109.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id', -1); - $response->cookie('key', -1); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231128.php b/.history/app/controller/IndexController_20230101231128.php deleted file mode 100644 index 42d7bbe..0000000 --- a/.history/app/controller/IndexController_20230101231128.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1); - $response->cookie('key','', -1); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231501.php b/.history/app/controller/IndexController_20230101231501.php deleted file mode 100644 index 65edd91..0000000 --- a/.history/app/controller/IndexController_20230101231501.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','0', -999); - $response->cookie('key','0', -999); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231532.php b/.history/app/controller/IndexController_20230101231532.php deleted file mode 100644 index a8ea6c1..0000000 --- a/.history/app/controller/IndexController_20230101231532.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','blank', 1); - $response->cookie('key','blank', 1); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231609.php b/.history/app/controller/IndexController_20230101231609.php deleted file mode 100644 index 7c3e2fb..0000000 --- a/.history/app/controller/IndexController_20230101231609.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','blank', -1.'/'); - $response->cookie('key','blank', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231611.php b/.history/app/controller/IndexController_20230101231611.php deleted file mode 100644 index 7618d18..0000000 --- a/.history/app/controller/IndexController_20230101231611.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','blank', -1,'/'); - $response->cookie('key','blank', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231630.php b/.history/app/controller/IndexController_20230101231630.php deleted file mode 100644 index a89621b..0000000 --- a/.history/app/controller/IndexController_20230101231630.php +++ /dev/null @@ -1,128 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - echo($back); - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101231812.php b/.history/app/controller/IndexController_20230101231812.php deleted file mode 100644 index fb0488f..0000000 --- a/.history/app/controller/IndexController_20230101231812.php +++ /dev/null @@ -1,127 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101232629.php b/.history/app/controller/IndexController_20230101232629.php deleted file mode 100644 index 9a80b07..0000000 --- a/.history/app/controller/IndexController_20230101232629.php +++ /dev/null @@ -1,132 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101233633.php b/.history/app/controller/IndexController_20230101233633.php deleted file mode 100644 index 808921d..0000000 --- a/.history/app/controller/IndexController_20230101233633.php +++ /dev/null @@ -1,134 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - if($redis->get($kf.$path)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230101233658.php b/.history/app/controller/IndexController_20230101233658.php deleted file mode 100644 index 2aae8db..0000000 --- a/.history/app/controller/IndexController_20230101233658.php +++ /dev/null @@ -1,136 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - if($redis->get($kf.$path)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - $back=$return->body(); - echo($return->header('Content-Type')); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - /** - * if($return->header('Content-Type')[0]=='image/svg+xml'){ - - *} - */ - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230102115404.php b/.history/app/controller/IndexController_20230102115404.php deleted file mode 100644 index 2a73524..0000000 --- a/.history/app/controller/IndexController_20230102115404.php +++ /dev/null @@ -1,142 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.url_encode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230102115453.php b/.history/app/controller/IndexController_20230102115453.php deleted file mode 100644 index a2be17b..0000000 --- a/.history/app/controller/IndexController_20230102115453.php +++ /dev/null @@ -1,142 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.urlencode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230102115631.php b/.history/app/controller/IndexController_20230102115631.php deleted file mode 100644 index 3caef53..0000000 --- a/.history/app/controller/IndexController_20230102115631.php +++ /dev/null @@ -1,147 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - - - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.urlencode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - -} diff --git a/.history/app/controller/IndexController_20230102124339.php b/.history/app/controller/IndexController_20230102124339.php deleted file mode 100644 index c658bb8..0000000 --- a/.history/app/controller/IndexController_20230102124339.php +++ /dev/null @@ -1,153 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - - - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.urlencode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - - public function download(Request $request) - { - - return view('index'); - } - -} diff --git a/.history/app/controller/IndexController_20230102124904.php b/.history/app/controller/IndexController_20230102124904.php deleted file mode 100644 index 1f1a437..0000000 --- a/.history/app/controller/IndexController_20230102124904.php +++ /dev/null @@ -1,166 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - - - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.urlencode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - - public function download(Request $request) - { - - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - $path=$request->uri(); - View::assign([ - 'id' => $id, - 'key'=> $key, - 'path'=> $path, - ]); - return view('index'); - - } - -} diff --git a/.history/app/controller/IndexController_20230102142646.php b/.history/app/controller/IndexController_20230102142646.php deleted file mode 100644 index d54f0ed..0000000 --- a/.history/app/controller/IndexController_20230102142646.php +++ /dev/null @@ -1,173 +0,0 @@ -cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - - - $path=$request->uri(); - if($path==''||$path=='/'){ - $path='/?signAll=1&ts=1657'; - } - $rpath=$kf.urlencode("$path"); - if($redis->get($rpath)){ - $response->withHeaders(json_decode($redis->hget($rpath,'CT'))); - $response->withBody($redis->hget($rpath,'body')); - return $response; - } - - $url='http://'.getenv('Zlibrary').$path; - $auth=array('remix_userid'=>"$id",'remix_userkey'=>"$key",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); - $return = Http::withProxy('socks5h://'.getenv('proxy'))->withCookies($auth,getenv('Zlibrary'))->get($url); - $response->withHeaders($return->headers()); - - $back=$return->body(); - if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - $ver=getenv('version'); - $front= << -
-
- Zlibrary Proxy(v$ver) UserID:$id [退出账号] [PublicMirrorsNetwork] -
-
-EOF; - $back=$front.$back; - } - - /**Make Cache */ - if($path=='/resources/build/global.js?0.495' || $path=='/resources/build/global.css?0.495' || $path=='/resources/ext/freewall.js' || preg_match("/^image*/",$return->header('Content-Type')) ){ - $redis->hset($rpath,'CT',json_encode($return->headers())); - $redis->hset($rpath,'body',$back); - $redis->expire($rpath,43200); - } - - - - $response->withBody($back); - return $response; - } - - public function login(Request $request) - { - return view('login'); - } - public function check(Request $request) - { - $username=$request->post('name','blank'); - $password=$request->post('password','blank'); - $code=$request->post('code','blank'); - if($username=='blank' || $password=='blank' || $code=='blank'){ - return json(['code'=>500, 'msg'=>'缺少参数']); - } - - try { - $V=v::Email()->setName('用户名')->check($username); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->setName('密码')->noWhitespace()->check($password); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - try { - $V=v::stringType()->length(5, 5)->setName('验证码')->noWhitespace()->check($code); - } catch (ValidationException $exception) { - return json(['code'=>500, 'msg'=>$exception->getMessage()]); - } - - if (strtolower($code) !== $request->session()->get('captcha')) { - return json(['code' => 400, 'msg' => '输入的验证码不正确']); - } - - $url='http://'.getenv('ZlibraryLogin').'/rpc.php'; - $response = Http::withProxy('socks5h://'.getenv('proxy'))->post("$url", ['isModal' => true,'email'=>"$username",'password'=>"$password",'site_mode'=>'books','action'=>'login','redirectUrl'=>'','isSinglelogin'=>'1','isTorVersion'=>'1','gg_json_mode'=>'1']); - if(!$response->successful()){ - return json(['code' => 501, 'msg' => '登陆失败,服务端错误']); - } - $return=$response->body(); - $return=json_decode($return); - if(isset($return->response->validationError)){ - return json(['code' => 502, 'msg' => 'Zlib登陆失败:'.$return->response->message]); - } - $url=parse_url($return->response->params)['query']; - $queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } - - return json(['code'=>200,'msg'=>'登陆成功','userid'=>$params['remix_userid']])->cookie('id', $params['remix_userid'],43200,'/')->cookie('key', $params['remix_userkey'],43200,'/'); - } - public function code(Request $request) - { - // 初始化验证码类 - $builder = new CaptchaBuilder; - // 生成验证码 - $builder->build(); - // 将验证码的值存储到session中 - $request->session()->set('captcha', strtolower($builder->getPhrase())); - // 获得验证码图片二进制数据 - $img_content = $builder->get(); - // 输出验证码二进制数据 - return response($img_content, 200, ['Content-Type' => 'image/jpeg']); - } - public function logout(Request $request) - { - $response = response(); - $response->cookie('id','', -1,'/'); - $response->cookie('key','', -1,'/'); - $response->header('Location', '/login'); - $response->withStatus(302); - return $response; - } - - public function download(Request $request) - { - - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($key=='blank' || $id=='blank'){ - return redirect('/login'); - } - $path=$request->uri(); - View::assign([ - 'id' => $id, - 'key'=> $key, - 'path'=> $path, - ]); - return view('index'); - - } - - public function file(Request $request) - { - - return response()->file(base_path() . '/app/controller/IndexController.php'); - - } - -} diff --git a/.history/app/middleware/Login_20230101201400.php b/.history/app/middleware/Login_20230101201400.php deleted file mode 100644 index e69de29..0000000 diff --git a/.history/app/middleware/Login_20230101201403.php b/.history/app/middleware/Login_20230101201403.php deleted file mode 100644 index 593161e..0000000 --- a/.history/app/middleware/Login_20230101201403.php +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/app/middleware/Login_20230101201416.php b/.history/app/middleware/Login_20230101201416.php deleted file mode 100644 index 2480bc4..0000000 --- a/.history/app/middleware/Login_20230101201416.php +++ /dev/null @@ -1,21 +0,0 @@ -session(); - // 用户未登录 - if (!$session->get('userinfo')) { - // 拦截请求,返回一个重定向响应,请求停止向洋葱芯穿越 - return redirect('/user/login'); - } - // 请求继续向洋葱芯穿越 - return $handler($request); - } -} \ No newline at end of file diff --git a/.history/app/middleware/Login_20230101201845.php b/.history/app/middleware/Login_20230101201845.php deleted file mode 100644 index a720abb..0000000 --- a/.history/app/middleware/Login_20230101201845.php +++ /dev/null @@ -1,23 +0,0 @@ -route->getPath(); - if(substr($route, 0, 6) != "/login"){ - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - // 请求继续向洋葱芯穿越 - return $handler($request); - } -} \ No newline at end of file diff --git a/.history/app/middleware/Login_20230101202102.php b/.history/app/middleware/Login_20230101202102.php deleted file mode 100644 index 52370cf..0000000 --- a/.history/app/middleware/Login_20230101202102.php +++ /dev/null @@ -1,24 +0,0 @@ -route->getPath(); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if(substr($route, 0, 6) != "/login"){ - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - $request->id=$id; - $request->key=$key; - return $handler($request); - } -} \ No newline at end of file diff --git a/.history/app/middleware/Login_20230101202206.php b/.history/app/middleware/Login_20230101202206.php deleted file mode 100644 index 7101c6d..0000000 --- a/.history/app/middleware/Login_20230101202206.php +++ /dev/null @@ -1,25 +0,0 @@ -route->getPath(); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - echo('open'); - if(substr($route, 0, 6) != "/login"){ - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - } - $request->id=$id; - $request->key=$key; - return $handler($request); - } -} \ No newline at end of file diff --git a/.history/app/view/index_20230101202946.html b/.history/app/view/index_20230101202946.html deleted file mode 100644 index e69de29..0000000 diff --git a/.history/app/view/index_20230101202948.html b/.history/app/view/index_20230101202948.html deleted file mode 100644 index a6fc30d..0000000 --- a/.history/app/view/index_20230101202948.html +++ /dev/null @@ -1,17 +0,0 @@ - - diff --git a/.history/app/view/index_20230101203012.html b/.history/app/view/index_20230101203012.html deleted file mode 100644 index 38bf716..0000000 --- a/.history/app/view/index_20230101203012.html +++ /dev/null @@ -1,33 +0,0 @@ - - - diff --git a/.history/app/view/index_20230101203249.html b/.history/app/view/index_20230101203249.html deleted file mode 100644 index 2a7edb8..0000000 --- a/.history/app/view/index_20230101203249.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v1.0.0) -
- - -
\ No newline at end of file diff --git a/.history/app/view/index_20230101203257.html b/.history/app/view/index_20230101203257.html deleted file mode 100644 index 04c51a3..0000000 --- a/.history/app/view/index_20230101203257.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v1.0.0) -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101203627.html b/.history/app/view/index_20230101203627.html deleted file mode 100644 index a59fd30..0000000 --- a/.history/app/view/index_20230101203627.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101203642.html b/.history/app/view/index_20230101203642.html deleted file mode 100644 index a59fd30..0000000 --- a/.history/app/view/index_20230101203642.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101203704.html b/.history/app/view/index_20230101203704.html deleted file mode 100644 index 202d471..0000000 --- a/.history/app/view/index_20230101203704.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101203816.html b/.history/app/view/index_20230101203816.html deleted file mode 100644 index 74365ec..0000000 --- a/.history/app/view/index_20230101203816.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101203939.html b/.history/app/view/index_20230101203939.html deleted file mode 100644 index f152406..0000000 --- a/.history/app/view/index_20230101203939.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101204053.html b/.history/app/view/index_20230101204053.html deleted file mode 100644 index 4955657..0000000 --- a/.history/app/view/index_20230101204053.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101204120.html b/.history/app/view/index_20230101204120.html deleted file mode 100644 index 7cfcba1..0000000 --- a/.history/app/view/index_20230101204120.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
- - -
-
- - \ No newline at end of file diff --git a/.history/app/view/index_20230101204208.html b/.history/app/view/index_20230101204208.html deleted file mode 100644 index 2842b51..0000000 --- a/.history/app/view/index_20230101204208.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
- - -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204558.html b/.history/app/view/index_20230101204558.html deleted file mode 100644 index 5fb9e09..0000000 --- a/.history/app/view/index_20230101204558.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204608.html b/.history/app/view/index_20230101204608.html deleted file mode 100644 index 5fb9e09..0000000 --- a/.history/app/view/index_20230101204608.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204615.html b/.history/app/view/index_20230101204615.html deleted file mode 100644 index 436b4c0..0000000 --- a/.history/app/view/index_20230101204615.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204631.html b/.history/app/view/index_20230101204631.html deleted file mode 100644 index 192ecb0..0000000 --- a/.history/app/view/index_20230101204631.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204642.html b/.history/app/view/index_20230101204642.html deleted file mode 100644 index 69d8d84..0000000 --- a/.history/app/view/index_20230101204642.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204645.html b/.history/app/view/index_20230101204645.html deleted file mode 100644 index 7ee711b..0000000 --- a/.history/app/view/index_20230101204645.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/index_20230101204737.html b/.history/app/view/index_20230101204737.html deleted file mode 100644 index 08f715c..0000000 --- a/.history/app/view/index_20230101204737.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - diff --git a/.history/app/view/index_20230101205022.html b/.history/app/view/index_20230101205022.html deleted file mode 100644 index 55d9625..0000000 --- a/.history/app/view/index_20230101205022.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - - - diff --git a/.history/app/view/index_20230101205058.html b/.history/app/view/index_20230101205058.html deleted file mode 100644 index 93d8b73..0000000 --- a/.history/app/view/index_20230101205058.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - - - diff --git a/.history/app/view/index_20230101205143.html b/.history/app/view/index_20230101205143.html deleted file mode 100644 index d5b8244..0000000 --- a/.history/app/view/index_20230101205143.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - - - - - diff --git a/.history/app/view/index_20230101223457.html b/.history/app/view/index_20230101223457.html deleted file mode 100644 index b94ff46..0000000 --- a/.history/app/view/index_20230101223457.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230101223530.html b/.history/app/view/index_20230101223530.html deleted file mode 100644 index 58825ce..0000000 --- a/.history/app/view/index_20230101223530.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - (Proxy)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102124634.html b/.history/app/view/index_20230102124634.html deleted file mode 100644 index 42629eb..0000000 --- a/.history/app/view/index_20230102124634.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102124718.html b/.history/app/view/index_20230102124718.html deleted file mode 100644 index 0cbf4b6..0000000 --- a/.history/app/view/index_20230102124718.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102124723.html b/.history/app/view/index_20230102124723.html deleted file mode 100644 index e0d75e7..0000000 --- a/.history/app/view/index_20230102124723.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102124919.html b/.history/app/view/index_20230102124919.html deleted file mode 100644 index 1665f22..0000000 --- a/.history/app/view/index_20230102124919.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102125045.html b/.history/app/view/index_20230102125045.html deleted file mode 100644 index f9430b1..0000000 --- a/.history/app/view/index_20230102125045.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102125053.html b/.history/app/view/index_20230102125053.html deleted file mode 100644 index a0f1d9a..0000000 --- a/.history/app/view/index_20230102125053.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102125226.html b/.history/app/view/index_20230102125226.html deleted file mode 100644 index 91065ee..0000000 --- a/.history/app/view/index_20230102125226.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102125230.html b/.history/app/view/index_20230102125230.html deleted file mode 100644 index 73ad0b1..0000000 --- a/.history/app/view/index_20230102125230.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
-
-
-
-
-
- 加载中,请耐心等待 -
-
-
- - diff --git a/.history/app/view/index_20230102143349.html b/.history/app/view/index_20230102143349.html deleted file mode 100644 index 82eb68d..0000000 --- a/.history/app/view/index_20230102143349.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-
- - - - diff --git a/.history/app/view/index_20230102174618.html b/.history/app/view/index_20230102174618.html deleted file mode 100644 index 2098877..0000000 --- a/.history/app/view/index_20230102174618.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-
- - - - diff --git a/.history/app/view/index_20230102175038.html b/.history/app/view/index_20230102175038.html deleted file mode 100644 index cde4ba5..0000000 --- a/.history/app/view/index_20230102175038.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-
- - - - diff --git a/.history/app/view/index_20230102175043.html b/.history/app/view/index_20230102175043.html deleted file mode 100644 index 2236439..0000000 --- a/.history/app/view/index_20230102175043.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-
- - - - diff --git a/.history/app/view/index_20230102175208.html b/.history/app/view/index_20230102175208.html deleted file mode 100644 index 4bb5b7a..0000000 --- a/.history/app/view/index_20230102175208.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- - -
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102175306.html b/.history/app/view/index_20230102175306.html deleted file mode 100644 index 3002991..0000000 --- a/.history/app/view/index_20230102175306.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
- 点此下载图书 -
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102175452.html b/.history/app/view/index_20230102175452.html deleted file mode 100644 index 58be36c..0000000 --- a/.history/app/view/index_20230102175452.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102175543.html b/.history/app/view/index_20230102175543.html deleted file mode 100644 index 2bb798c..0000000 --- a/.history/app/view/index_20230102175543.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102175638.html b/.history/app/view/index_20230102175638.html deleted file mode 100644 index 7451dbc..0000000 --- a/.history/app/view/index_20230102175638.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102175659.html b/.history/app/view/index_20230102175659.html deleted file mode 100644 index 0bec239..0000000 --- a/.history/app/view/index_20230102175659.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102181935.html b/.history/app/view/index_20230102181935.html deleted file mode 100644 index 7c5edae..0000000 --- a/.history/app/view/index_20230102181935.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102181951.html b/.history/app/view/index_20230102181951.html deleted file mode 100644 index 86193b9..0000000 --- a/.history/app/view/index_20230102181951.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102182128.html b/.history/app/view/index_20230102182128.html deleted file mode 100644 index 79e3a46..0000000 --- a/.history/app/view/index_20230102182128.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

- -
-

📥点此下载图书

-
- (重新生成将消耗Zlib每日次数) -
-
- - - - diff --git a/.history/app/view/index_20230102182216.html b/.history/app/view/index_20230102182216.html deleted file mode 100644 index a9b33da..0000000 --- a/.history/app/view/index_20230102182216.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
- -

📥点此下载图书

-
-
- (重新生成将消耗Zlib每日次数) -
-
-
- - - - diff --git a/.history/app/view/index_20230102182247.html b/.history/app/view/index_20230102182247.html deleted file mode 100644 index 16bc556..0000000 --- a/.history/app/view/index_20230102182247.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
- -

📥点此下载图书

-
-
- (重新生成将消耗Zlib每日次数) -
-
-
- - - - diff --git a/.history/app/view/index_20230102182334.html b/.history/app/view/index_20230102182334.html deleted file mode 100644 index 19ad940..0000000 --- a/.history/app/view/index_20230102182334.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
-
- -

📥点此下载图书

-
-
- (重新生成将消耗Zlib每日次数) -
-
-
- - - - diff --git a/.history/app/view/index_20230102182553.html b/.history/app/view/index_20230102182553.html deleted file mode 100644 index a6c4744..0000000 --- a/.history/app/view/index_20230102182553.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- -
-
- - - - diff --git a/.history/app/view/index_20230102182723.html b/.history/app/view/index_20230102182723.html deleted file mode 100644 index fc29824..0000000 --- a/.history/app/view/index_20230102182723.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- -
-
- - - - diff --git a/.history/app/view/index_20230102182726.html b/.history/app/view/index_20230102182726.html deleted file mode 100644 index eb45648..0000000 --- a/.history/app/view/index_20230102182726.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- -
-
- - - - diff --git a/.history/app/view/index_20230102182911.html b/.history/app/view/index_20230102182911.html deleted file mode 100644 index f1b30c7..0000000 --- a/.history/app/view/index_20230102182911.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183013.html b/.history/app/view/index_20230102183013.html deleted file mode 100644 index ce84e4c..0000000 --- a/.history/app/view/index_20230102183013.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183031.html b/.history/app/view/index_20230102183031.html deleted file mode 100644 index 78f14b3..0000000 --- a/.history/app/view/index_20230102183031.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183648.html b/.history/app/view/index_20230102183648.html deleted file mode 100644 index 6b5a07d..0000000 --- a/.history/app/view/index_20230102183648.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183911.html b/.history/app/view/index_20230102183911.html deleted file mode 100644 index cb3653e..0000000 --- a/.history/app/view/index_20230102183911.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183921.html b/.history/app/view/index_20230102183921.html deleted file mode 100644 index 713d52e..0000000 --- a/.history/app/view/index_20230102183921.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
-

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102183951.html b/.history/app/view/index_20230102183951.html deleted file mode 100644 index 09bea01..0000000 --- a/.history/app/view/index_20230102183951.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- [返回ZlibraryProxy] -

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102184217.html b/.history/app/view/index_20230102184217.html deleted file mode 100644 index 1429e10..0000000 --- a/.history/app/view/index_20230102184217.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- [返回ZlibraryProxy] -

下载图书

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102184245.html b/.history/app/view/index_20230102184245.html deleted file mode 100644 index 2b7b305..0000000 --- a/.history/app/view/index_20230102184245.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- [返回ZlibraryProxy] -

下载图书

- -

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102184436.html b/.history/app/view/index_20230102184436.html deleted file mode 100644 index 0f30be0..0000000 --- a/.history/app/view/index_20230102184436.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- [返回ZlibraryProxy] -

下载图书

- -

-
- - -
-
- - - - diff --git a/.history/app/view/index_20230102185838.html b/.history/app/view/index_20230102185838.html deleted file mode 100644 index 80684a0..0000000 --- a/.history/app/view/index_20230102185838.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - - - - - - (ProxyDownload)Z-Library - - - -
-
-
- Zlibrary Proxy(v) UserID: [退出账号] -
-
-
- [返回ZlibraryProxy] -

下载图书

- -

-
- - -
-
- - - - diff --git a/.history/app/view/login_20230101173350.html b/.history/app/view/login_20230101173350.html deleted file mode 100644 index e69de29..0000000 diff --git a/.history/app/view/login_20230101173352.html b/.history/app/view/login_20230101173352.html deleted file mode 100644 index a6fc30d..0000000 --- a/.history/app/view/login_20230101173352.html +++ /dev/null @@ -1,17 +0,0 @@ - - diff --git a/.history/app/view/login_20230101173411.html b/.history/app/view/login_20230101173411.html deleted file mode 100644 index db31cb7..0000000 --- a/.history/app/view/login_20230101173411.html +++ /dev/null @@ -1,17 +0,0 @@ - - diff --git a/.history/app/view/login_20230101174829.html b/.history/app/view/login_20230101174829.html deleted file mode 100644 index 4655581..0000000 --- a/.history/app/view/login_20230101174829.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

登录Z-library


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 您的请求成功发送后,我们将于48小时内通过邮件回复您 -
- 由于我们承诺不更改源站,部分站点无法制作镜像,请谅解 -
- 我们有权拒绝一切无意义的垃圾站点的镜像申请 -
- 我们仅接受境内难以访问的 公益、公共 类型站点 -
- 拒绝一切商业、内部站点 -
- -
-

请填写以下表单以完成镜像添加申请。

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101175120.html b/.history/app/view/login_20230101175120.html deleted file mode 100644 index b84d68d..0000000 --- a/.history/app/view/login_20230101175120.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

登录Z-library


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101175133.html b/.history/app/view/login_20230101175133.html deleted file mode 100644 index aa2fecc..0000000 --- a/.history/app/view/login_20230101175133.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

登录Z-library


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101175218.html b/.history/app/view/login_20230101175218.html deleted file mode 100644 index c6a17eb..0000000 --- a/.history/app/view/login_20230101175218.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

登录Z-library


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101175401.html b/.history/app/view/login_20230101175401.html deleted file mode 100644 index abbc70e..0000000 --- a/.history/app/view/login_20230101175401.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101175437.html b/.history/app/view/login_20230101175437.html deleted file mode 100644 index b48c0ef..0000000 --- a/.history/app/view/login_20230101175437.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101180128.html b/.history/app/view/login_20230101180128.html deleted file mode 100644 index 83a1d62..0000000 --- a/.history/app/view/login_20230101180128.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- -

-
- -
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101180149.html b/.history/app/view/login_20230101180149.html deleted file mode 100644 index d40bea9..0000000 --- a/.history/app/view/login_20230101180149.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

- -
-

- -

-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101180227.html b/.history/app/view/login_20230101180227.html deleted file mode 100644 index a44eddd..0000000 --- a/.history/app/view/login_20230101180227.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

- -
-

- -

-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101180234.html b/.history/app/view/login_20230101180234.html deleted file mode 100644 index 85dee42..0000000 --- a/.history/app/view/login_20230101180234.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

- -
-

- -

-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101180241.html b/.history/app/view/login_20230101180241.html deleted file mode 100644 index 70cffb6..0000000 --- a/.history/app/view/login_20230101180241.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

- -
-

- -

-
-
- - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101181129.html b/.history/app/view/login_20230101181129.html deleted file mode 100644 index a46a0b4..0000000 --- a/.history/app/view/login_20230101181129.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101181150.html b/.history/app/view/login_20230101181150.html deleted file mode 100644 index 55eddab..0000000 --- a/.history/app/view/login_20230101181150.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101182821.html b/.history/app/view/login_20230101182821.html deleted file mode 100644 index 2cd9fa7..0000000 --- a/.history/app/view/login_20230101182821.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183327.html b/.history/app/view/login_20230101183327.html deleted file mode 100644 index 4d9a2cf..0000000 --- a/.history/app/view/login_20230101183327.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183446.html b/.history/app/view/login_20230101183446.html deleted file mode 100644 index c055cff..0000000 --- a/.history/app/view/login_20230101183446.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183552.html b/.history/app/view/login_20230101183552.html deleted file mode 100644 index f2c24ae..0000000 --- a/.history/app/view/login_20230101183552.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183630.html b/.history/app/view/login_20230101183630.html deleted file mode 100644 index 62fab70..0000000 --- a/.history/app/view/login_20230101183630.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183643.html b/.history/app/view/login_20230101183643.html deleted file mode 100644 index cb29ed6..0000000 --- a/.history/app/view/login_20230101183643.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183645.html b/.history/app/view/login_20230101183645.html deleted file mode 100644 index cedef46..0000000 --- a/.history/app/view/login_20230101183645.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183712.html b/.history/app/view/login_20230101183712.html deleted file mode 100644 index fb2131d..0000000 --- a/.history/app/view/login_20230101183712.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183839.html b/.history/app/view/login_20230101183839.html deleted file mode 100644 index 707a677..0000000 --- a/.history/app/view/login_20230101183839.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101183850.html b/.history/app/view/login_20230101183850.html deleted file mode 100644 index b1bf4db..0000000 --- a/.history/app/view/login_20230101183850.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101184026.html b/.history/app/view/login_20230101184026.html deleted file mode 100644 index eff0797..0000000 --- a/.history/app/view/login_20230101184026.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101185849.html b/.history/app/view/login_20230101185849.html deleted file mode 100644 index c180ed0..0000000 --- a/.history/app/view/login_20230101185849.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
-

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190053.html b/.history/app/view/login_20230101190053.html deleted file mode 100644 index d82d9c9..0000000 --- a/.history/app/view/login_20230101190053.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

-

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190231.html b/.history/app/view/login_20230101190231.html deleted file mode 100644 index 0542a18..0000000 --- a/.history/app/view/login_20230101190231.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190302.html b/.history/app/view/login_20230101190302.html deleted file mode 100644 index a5149f9..0000000 --- a/.history/app/view/login_20230101190302.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190358.html b/.history/app/view/login_20230101190358.html deleted file mode 100644 index 5b49ae0..0000000 --- a/.history/app/view/login_20230101190358.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190412.html b/.history/app/view/login_20230101190412.html deleted file mode 100644 index 74ab390..0000000 --- a/.history/app/view/login_20230101190412.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190659.html b/.history/app/view/login_20230101190659.html deleted file mode 100644 index 736c7b2..0000000 --- a/.history/app/view/login_20230101190659.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190738.html b/.history/app/view/login_20230101190738.html deleted file mode 100644 index 5a40bce..0000000 --- a/.history/app/view/login_20230101190738.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101190748.html b/.history/app/view/login_20230101190748.html deleted file mode 100644 index 02ee967..0000000 --- a/.history/app/view/login_20230101190748.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101192531.html b/.history/app/view/login_20230101192531.html deleted file mode 100644 index 8a1e47f..0000000 --- a/.history/app/view/login_20230101192531.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101192600.html b/.history/app/view/login_20230101192600.html deleted file mode 100644 index a90ef73..0000000 --- a/.history/app/view/login_20230101192600.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101192622.html b/.history/app/view/login_20230101192622.html deleted file mode 100644 index 013478b..0000000 --- a/.history/app/view/login_20230101192622.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101192648.html b/.history/app/view/login_20230101192648.html deleted file mode 100644 index 9c64b40..0000000 --- a/.history/app/view/login_20230101192648.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101193338.html b/.history/app/view/login_20230101193338.html deleted file mode 100644 index bd6f29a..0000000 --- a/.history/app/view/login_20230101193338.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101195634.html b/.history/app/view/login_20230101195634.html deleted file mode 100644 index c208a91..0000000 --- a/.history/app/view/login_20230101195634.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230101195725.html b/.history/app/view/login_20230101195725.html deleted file mode 100644 index 52e5927..0000000 --- a/.history/app/view/login_20230101195725.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230102190430.html b/.history/app/view/login_20230102190430.html deleted file mode 100644 index 031dd15..0000000 --- a/.history/app/view/login_20230102190430.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 由于Zlibrary的邮件服务器已经宕机,任何新注册和更改密码请求均无效,均无法使用,如果您的账号还未通过邮箱激活将无法使用本服务 -
- 本代理不会保存您的密码(仅保存到您本地的cookies) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/app/view/login_20230102190457.html b/.history/app/view/login_20230102190457.html deleted file mode 100644 index 8adda7e..0000000 --- a/.history/app/view/login_20230102190457.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - - - - - - 镜像站增加申请-Mirrors.pw - - - - -
-

Z-library Proxy


-

这是一个Zlibrary的代理镜像

- 由[PublicMirrorsNetwork]维护 - -
- 本代理利用广大的Tor代理和中继节点,基于TOR技术提供服务 -
- 本代理使用Laysense提供的强大内部SD-WAN技术 -
- 使用前请确保您的行为符合当地法律 -
- 由于Zlibrary的邮件服务器已经宕机,任何新注册和更改密码请求均无效,均无法使用,如果您的账号还未通过邮箱激活将无法使用本服务 -
- 本代理不会保存您的密码(仅在浏览器cookies保存您的ID) -
- -
- -

登录到Z-Library

-
-
-

- - -

-

- - -

-

- - -

- -

-
-

- -

-
-
- - - - - - - - \ No newline at end of file diff --git a/.history/books/2023/01/test_20230102171837 b/.history/books/2023/01/test_20230102171837 deleted file mode 100644 index e69de29..0000000 diff --git a/.history/books/2023/01/test_20230102171838 b/.history/books/2023/01/test_20230102171838 deleted file mode 100644 index 593161e..0000000 --- a/.history/books/2023/01/test_20230102171838 +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/config/middleware_20221212162407.php b/.history/config/middleware_20221212162407.php deleted file mode 100644 index 8e964ed..0000000 --- a/.history/config/middleware_20221212162407.php +++ /dev/null @@ -1,15 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return []; \ No newline at end of file diff --git a/.history/config/middleware_20230101201929.php b/.history/config/middleware_20230101201929.php deleted file mode 100644 index c6c2cde..0000000 --- a/.history/config/middleware_20230101201929.php +++ /dev/null @@ -1,20 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - '' => [ - app\middleware\Login::class, - ] - -]; \ No newline at end of file diff --git a/.history/config/middleware_20230101202230.php b/.history/config/middleware_20230101202230.php deleted file mode 100644 index 8e964ed..0000000 --- a/.history/config/middleware_20230101202230.php +++ /dev/null @@ -1,15 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return []; \ No newline at end of file diff --git a/.history/config/plugin/nsp-team/webman-throttler/app_20230101182209.php b/.history/config/plugin/nsp-team/webman-throttler/app_20230101182209.php deleted file mode 100644 index ca25a15..0000000 --- a/.history/config/plugin/nsp-team/webman-throttler/app_20230101182209.php +++ /dev/null @@ -1,16 +0,0 @@ - true, - - 'capacity' => 60, // The number of requests the "bucket" can hold - 'seconds' => 60, // The time it takes the "bucket" to completely refill - 'cost' => 1, // The number of tokens this action uses. - 'customer_handle' => [ - 'class' => \support\Response::class, - 'constructor' => [ - 429, - array(), - json_encode(['success' => false, 'msg' => '请求次数太频繁'], 256), - ], - ], -]; \ No newline at end of file diff --git a/.history/config/plugin/nsp-team/webman-throttler/app_20230101182301.php b/.history/config/plugin/nsp-team/webman-throttler/app_20230101182301.php deleted file mode 100644 index 6542291..0000000 --- a/.history/config/plugin/nsp-team/webman-throttler/app_20230101182301.php +++ /dev/null @@ -1,15 +0,0 @@ - true, - 'capacity' => 60, // The number of requests the "bucket" can hold - 'seconds' => 60, // The time it takes the "bucket" to completely refill - 'cost' => 1, // The number of tokens this action uses. - 'customer_handle' => [ - 'class' => \support\Response::class, - 'constructor' => [ - 429, - array(), - json_encode(['success' => false, 'msg' => '请求次数太频繁'], 256), - ], - ], -]; \ No newline at end of file diff --git a/.history/config/plugin/yzh52521/throttle/app_20230101181847.php b/.history/config/plugin/yzh52521/throttle/app_20230101181847.php deleted file mode 100644 index 4c6b8a6..0000000 --- a/.history/config/plugin/yzh52521/throttle/app_20230101181847.php +++ /dev/null @@ -1,54 +0,0 @@ - true, - // 缓存键前缀,防止键值与其他应用冲突 - 'prefix' => 'throttle_', - - // 缓存的键,true 表示使用来源ip (request->getRealIp(true)) - 'key' => true, - - // 要被限制的请求类型, eg: GET POST PUT DELETE HEAD - 'visit_method' => ['GET'], - - // 设置访问频率,例如 '10/m' 指的是允许每分钟请求10次。值 null 表示不限制, - // eg: null 10/m 20/h 300/d 200/300 - 'visit_rate' => '100/m', - - // 响应体中设置速率限制的头部信息,含义见:https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting - 'visit_enable_show_rate_limit' => true, - - // 访问受限时返回的响应( type: null|callable ) - 'visit_fail_response' => function (Throttle $throttle, Request $request, int $wait_seconds): Response { - return response('Too many requests, try again after ' . $wait_seconds . ' seconds.'); - }, - - /* - * 设置节流算法,组件提供了四种算法: - * - CounterFixed :计数固定窗口 - * - CounterSlider: 滑动窗口 - * - TokenBucket : 令牌桶算法 - * - LeakyBucket : 漏桶限流算法 - */ - 'driver_name' => CounterFixed::class, - - // Psr-16通用缓存库规范: https://blog.csdn.net/maquealone/article/details/79651111 - // Cache驱动必须符合PSR-16缓存库规范,最低实现get/set俩个方法 (且需静态化实现) - // static get(string $key, mixed $default=null) - // static set(string $key, mixed $value, int $ttl=0); - - //webman默认使用 symfony/cache作为cache组件(https://www.workerman.net/doc/webman/db/cache.html) - 'cache_drive' => support\Cache::class, - - //使用ThinkCache - //'cache_drive' => think\facade\Cache::class, -]; \ No newline at end of file diff --git a/.history/config/plugin/yzh52521/throttle/app_20230101181956.php b/.history/config/plugin/yzh52521/throttle/app_20230101181956.php deleted file mode 100644 index ab4b6a8..0000000 --- a/.history/config/plugin/yzh52521/throttle/app_20230101181956.php +++ /dev/null @@ -1,54 +0,0 @@ - true, - // 缓存键前缀,防止键值与其他应用冲突 - 'prefix' => 'throttle_', - - // 缓存的键,true 表示使用来源ip (request->getRealIp(true)) - 'key' => true, - - // 要被限制的请求类型, eg: GET POST PUT DELETE HEAD - 'visit_method' => ['GET'], - - // 设置访问频率,例如 '10/m' 指的是允许每分钟请求10次。值 null 表示不限制, - // eg: null 10/m 20/h 300/d 200/300 - 'visit_rate' => '10/m', - - // 响应体中设置速率限制的头部信息,含义见:https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting - 'visit_enable_show_rate_limit' => true, - - // 访问受限时返回的响应( type: null|callable ) - 'visit_fail_response' => function (Throttle $throttle, Request $request, int $wait_seconds): Response { - return response('Too many requests, try again after ' . $wait_seconds . ' seconds.'); - }, - - /* - * 设置节流算法,组件提供了四种算法: - * - CounterFixed :计数固定窗口 - * - CounterSlider: 滑动窗口 - * - TokenBucket : 令牌桶算法 - * - LeakyBucket : 漏桶限流算法 - */ - 'driver_name' => TokenBucket::class, - - // Psr-16通用缓存库规范: https://blog.csdn.net/maquealone/article/details/79651111 - // Cache驱动必须符合PSR-16缓存库规范,最低实现get/set俩个方法 (且需静态化实现) - // static get(string $key, mixed $default=null) - // static set(string $key, mixed $value, int $ttl=0); - - //webman默认使用 symfony/cache作为cache组件(https://www.workerman.net/doc/webman/db/cache.html) - 'cache_drive' => support\Cache::class, - - //使用ThinkCache - //'cache_drive' => think\facade\Cache::class, -]; \ No newline at end of file diff --git a/.history/config/plugin/yzh52521/throttle/app_20230102144623.php b/.history/config/plugin/yzh52521/throttle/app_20230102144623.php deleted file mode 100644 index 4456325..0000000 --- a/.history/config/plugin/yzh52521/throttle/app_20230102144623.php +++ /dev/null @@ -1,54 +0,0 @@ - true, - // 缓存键前缀,防止键值与其他应用冲突 - 'prefix' => 'throttle_', - - // 缓存的键,true 表示使用来源ip (request->getRealIp(true)) - 'key' => true, - - // 要被限制的请求类型, eg: GET POST PUT DELETE HEAD - 'visit_method' => ['GET'], - - // 设置访问频率,例如 '10/m' 指的是允许每分钟请求10次。值 null 表示不限制, - // eg: null 10/m 20/h 300/d 200/300 - 'visit_rate' => '10/m', - - // 响应体中设置速率限制的头部信息,含义见:https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting - 'visit_enable_show_rate_limit' => true, - - // 访问受限时返回的响应( type: null|callable ) - 'visit_fail_response' => function (Throttle $throttle, Request $request, int $wait_seconds): Response { - return json(['code'=>999,'msg'=>'请求频率过快,请稍后重试']); - }, - - /* - * 设置节流算法,组件提供了四种算法: - * - CounterFixed :计数固定窗口 - * - CounterSlider: 滑动窗口 - * - TokenBucket : 令牌桶算法 - * - LeakyBucket : 漏桶限流算法 - */ - 'driver_name' => TokenBucket::class, - - // Psr-16通用缓存库规范: https://blog.csdn.net/maquealone/article/details/79651111 - // Cache驱动必须符合PSR-16缓存库规范,最低实现get/set俩个方法 (且需静态化实现) - // static get(string $key, mixed $default=null) - // static set(string $key, mixed $value, int $ttl=0); - - //webman默认使用 symfony/cache作为cache组件(https://www.workerman.net/doc/webman/db/cache.html) - 'cache_drive' => support\Cache::class, - - //使用ThinkCache - //'cache_drive' => think\facade\Cache::class, -]; \ No newline at end of file diff --git a/.history/config/redis_20221212162407.php b/.history/config/redis_20221212162407.php deleted file mode 100644 index 2f9757a..0000000 --- a/.history/config/redis_20221212162407.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'default' => [ - 'host' => '127.0.0.1', - 'password' => null, - 'port' => 6379, - 'database' => 0, - ], -]; diff --git a/.history/config/redis_20230101181759.php b/.history/config/redis_20230101181759.php deleted file mode 100644 index ae75ae1..0000000 --- a/.history/config/redis_20230101181759.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'default' => [ - 'host' => getenv('redis.host'), - 'password' => getenv('redis.password'), - 'port' => getenv('redis.port'), - 'database' => getenv('redis.database'), - ], -]; diff --git a/.history/config/redis_20230101182542.php b/.history/config/redis_20230101182542.php deleted file mode 100644 index ae75ae1..0000000 --- a/.history/config/redis_20230101182542.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'default' => [ - 'host' => getenv('redis.host'), - 'password' => getenv('redis.password'), - 'port' => getenv('redis.port'), - 'database' => getenv('redis.database'), - ], -]; diff --git a/.history/config/redis_20230101182638.php b/.history/config/redis_20230101182638.php deleted file mode 100644 index 98f0fd9..0000000 --- a/.history/config/redis_20230101182638.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'default' => [ - 'host' => getenv('redis.host'), - 'password' => getenv('redispassword'), - 'port' => getenv('redis.port'), - 'database' => getenv('redis.database'), - ], -]; diff --git a/.history/config/redis_20230101182737.php b/.history/config/redis_20230101182737.php deleted file mode 100644 index 95ec184..0000000 --- a/.history/config/redis_20230101182737.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'default' => [ - 'host' => getenv('RedisHost'), - 'password' => getenv('RedisPassword'), - 'port' => getenv('RedisPort'), - 'database' => getenv('RedisDatabase'), - ], -]; diff --git a/.history/config/route_20221212162407.php b/.history/config/route_20221212162407.php deleted file mode 100644 index a5064fc..0000000 --- a/.history/config/route_20221212162407.php +++ /dev/null @@ -1,21 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - - - - - - diff --git a/.history/config/route_20230101173323.php b/.history/config/route_20230101173323.php deleted file mode 100644 index 188ec76..0000000 --- a/.history/config/route_20230101173323.php +++ /dev/null @@ -1,22 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); - - - - - diff --git a/.history/config/route_20230101182341.php b/.history/config/route_20230101182341.php deleted file mode 100644 index 56270e8..0000000 --- a/.history/config/route_20230101182341.php +++ /dev/null @@ -1,25 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); - - - - - diff --git a/.history/config/route_20230101183538.php b/.history/config/route_20230101183538.php deleted file mode 100644 index ba66e13..0000000 --- a/.history/config/route_20230101183538.php +++ /dev/null @@ -1,28 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); - - - - - diff --git a/.history/config/route_20230101195822.php b/.history/config/route_20230101195822.php deleted file mode 100644 index e87b5f3..0000000 --- a/.history/config/route_20230101195822.php +++ /dev/null @@ -1,29 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/', [app\controller\IndexController::class, 'Index']); - - - - - diff --git a/.history/config/route_20230101195833.php b/.history/config/route_20230101195833.php deleted file mode 100644 index 3120ef5..0000000 --- a/.history/config/route_20230101195833.php +++ /dev/null @@ -1,29 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/', [app\controller\IndexController::class, 'index']); - - - - - diff --git a/.history/config/route_20230101195850.php b/.history/config/route_20230101195850.php deleted file mode 100644 index 2df0e13..0000000 --- a/.history/config/route_20230101195850.php +++ /dev/null @@ -1,30 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/', [app\controller\IndexController::class, 'index']); -Route::any('*', [app\controller\IndexController::class, 'index']); - - - - - diff --git a/.history/config/route_20230101200029.php b/.history/config/route_20230101200029.php deleted file mode 100644 index 52fbac6..0000000 --- a/.history/config/route_20230101200029.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::group('/', function () { - Route::any('', [app\controller\IndexController::class, 'index']); - Route::any('*', [app\controller\IndexController::class, 'index']); - }); - - - - diff --git a/.history/config/route_20230101200302.php b/.history/config/route_20230101200302.php deleted file mode 100644 index 9a284f2..0000000 --- a/.history/config/route_20230101200302.php +++ /dev/null @@ -1,30 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function(){ - Route::any('', [app\controller\IndexController::class, 'index']); -}); - - - - diff --git a/.history/config/route_20230101200324.php b/.history/config/route_20230101200324.php deleted file mode 100644 index 3508391..0000000 --- a/.history/config/route_20230101200324.php +++ /dev/null @@ -1,30 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function(){ - Route::any('*', [app\controller\IndexController::class, 'index']); -}); - - - - diff --git a/.history/config/route_20230101200915.php b/.history/config/route_20230101200915.php deleted file mode 100644 index 8edd427..0000000 --- a/.history/config/route_20230101200915.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::group('/', function () { - Route::any('', [app\controller\IndexController::class, 'index']); - }); - - - - diff --git a/.history/config/route_20230101201228.php b/.history/config/route_20230101201228.php deleted file mode 100644 index 65c9dcc..0000000 --- a/.history/config/route_20230101201228.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function(){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230101201254.php b/.history/config/route_20230101201254.php deleted file mode 100644 index 30f4754..0000000 --- a/.history/config/route_20230101201254.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230101202902.php b/.history/config/route_20230101202902.php deleted file mode 100644 index 6b1a0ee..0000000 --- a/.history/config/route_20230101202902.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101202939.php b/.history/config/route_20230101202939.php deleted file mode 100644 index e934a37..0000000 --- a/.history/config/route_20230101202939.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203425.php b/.history/config/route_20230101203425.php deleted file mode 100644 index 9b3c2e9..0000000 --- a/.history/config/route_20230101203425.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - echo($key); - if($id=='blank' || $key='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203452.php b/.history/config/route_20230101203452.php deleted file mode 100644 index 88617d5..0000000 --- a/.history/config/route_20230101203452.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - echo($id); - if( $id=='blank' || $key='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203513.php b/.history/config/route_20230101203513.php deleted file mode 100644 index 6bfde67..0000000 --- a/.history/config/route_20230101203513.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if( $id=='blank' || $key='blank'){ - echo('why?'); - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203529.php b/.history/config/route_20230101203529.php deleted file mode 100644 index 19f434c..0000000 --- a/.history/config/route_20230101203529.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if( $id=='blank' || $key=='blank'){ - echo('why?'); - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203550.php b/.history/config/route_20230101203550.php deleted file mode 100644 index 5273101..0000000 --- a/.history/config/route_20230101203550.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if( $id=='blank' || $key=='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route]); -}); - - - - diff --git a/.history/config/route_20230101203806.php b/.history/config/route_20230101203806.php deleted file mode 100644 index 56a15b4..0000000 --- a/.history/config/route_20230101203806.php +++ /dev/null @@ -1,39 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - #return (new app\controller\IndexController)->index($request); - $id=$request->cookie('id', 'blank'); - $key=$request->cookie('key', 'blank'); - if( $id=='blank' || $key=='blank'){ - return redirect('/login'); - } - $route = $request->route; - return view('index',['route'=>$route,'id'=>$id]); -}); - - - - diff --git a/.history/config/route_20230101205925.php b/.history/config/route_20230101205925.php deleted file mode 100644 index 9a650c4..0000000 --- a/.history/config/route_20230101205925.php +++ /dev/null @@ -1,32 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230101223459.php b/.history/config/route_20230101223459.php deleted file mode 100644 index 5a238c6..0000000 --- a/.history/config/route_20230101223459.php +++ /dev/null @@ -1,35 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230101230445.php b/.history/config/route_20230101230445.php deleted file mode 100644 index c62052c..0000000 --- a/.history/config/route_20230101230445.php +++ /dev/null @@ -1,37 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102124532.php b/.history/config/route_20230102124532.php deleted file mode 100644 index 7079e09..0000000 --- a/.history/config/route_20230102124532.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102131622.php b/.history/config/route_20230102131622.php deleted file mode 100644 index 506dce4..0000000 --- a/.history/config/route_20230102131622.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); - -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102142547.php b/.history/config/route_20230102142547.php deleted file mode 100644 index 506dce4..0000000 --- a/.history/config/route_20230102142547.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'index']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); - -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102142552.php b/.history/config/route_20230102142552.php deleted file mode 100644 index 5302443..0000000 --- a/.history/config/route_20230102142552.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'file']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); - -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102142817.php b/.history/config/route_20230102142817.php deleted file mode 100644 index 5302443..0000000 --- a/.history/config/route_20230102142817.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy', [app\controller\IndexController::class, 'file']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); - -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102143348.php b/.history/config/route_20230102143348.php deleted file mode 100644 index d70051c..0000000 --- a/.history/config/route_20230102143348.php +++ /dev/null @@ -1,40 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/zlibproxy/check', [app\controller\File::class, 'check']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); - -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/route_20230102174342.php b/.history/config/route_20230102174342.php deleted file mode 100644 index af29ba2..0000000 --- a/.history/config/route_20230102174342.php +++ /dev/null @@ -1,48 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use Webman\Route; - -Route::disableDefaultRoute(); -Route::any('/login', [app\controller\IndexController::class, 'login']); -Route::any('/login/check', [app\controller\IndexController::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/login/code', [app\controller\IndexController::class, 'code'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/test', function ($request) { - return view('index'); -}); -Route::any('/login/logout', [app\controller\IndexController::class, 'logout']); -Route::any('/logout.php', [app\controller\IndexController::class, 'logout']); -Route::any('/dl/{id}/{way}', [app\controller\IndexController::class, 'download']); - -Route::any('/zlibproxy/check', [app\controller\File::class, 'check'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/zlibproxy/download', [app\controller\File::class, 'download'])->middleware([ - app\middleware\Throttle::class -]); -Route::any('/zlibproxy/get', [app\controller\File::class, 'get'])->middleware([ - app\middleware\Throttle::class -]); - -Route::fallback(function($request){ - return (new app\controller\IndexController)->index($request); -}); - - - - diff --git a/.history/config/server_20221212162407.php b/.history/config/server_20221212162407.php deleted file mode 100644 index f55ce3c..0000000 --- a/.history/config/server_20221212162407.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'listen' => 'http://0.0.0.0:8787', - 'transport' => 'tcp', - 'context' => [], - 'name' => 'webman', - 'count' => cpu_count() * 4, - 'user' => '', - 'group' => '', - 'reusePort' => false, - 'event_loop' => '', - 'stop_timeout' => 2, - 'pid_file' => runtime_path() . '/webman.pid', - 'status_file' => runtime_path() . '/webman.status', - 'stdout_file' => runtime_path() . '/logs/stdout.log', - 'log_file' => runtime_path() . '/logs/workerman.log', - 'max_package_size' => 10 * 1024 * 1024 -]; diff --git a/.history/config/server_20230101175147.php b/.history/config/server_20230101175147.php deleted file mode 100644 index 6e44a8a..0000000 --- a/.history/config/server_20230101175147.php +++ /dev/null @@ -1,31 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -return [ - 'listen' => 'http://0.0.0.0:19500', - 'transport' => 'tcp', - 'context' => [], - 'name' => 'webman', - 'count' => cpu_count() * 4, - 'user' => '', - 'group' => '', - 'reusePort' => false, - 'event_loop' => '', - 'stop_timeout' => 2, - 'pid_file' => runtime_path() . '/webman.pid', - 'status_file' => runtime_path() . '/webman.status', - 'stdout_file' => runtime_path() . '/logs/stdout.log', - 'log_file' => runtime_path() . '/logs/workerman.log', - 'max_package_size' => 10 * 1024 * 1024 -]; diff --git a/.history/public/zlibproxy/jquery-3.6.3.min_20230101180946.js b/.history/public/zlibproxy/jquery-3.6.3.min_20230101180946.js deleted file mode 100644 index e69de29..0000000 diff --git a/.history/public/zlibproxy/jquery-3.6.3.min_20230101180949.js b/.history/public/zlibproxy/jquery-3.6.3.min_20230101180949.js deleted file mode 100644 index 593161e..0000000 --- a/.history/public/zlibproxy/jquery-3.6.3.min_20230101180949.js +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/public/zlibproxy/jquery-3.6.3.min_20230101180952.js b/.history/public/zlibproxy/jquery-3.6.3.min_20230101180952.js deleted file mode 100644 index b04d0fc..0000000 --- a/.history/public/zlibproxy/jquery-3.6.3.min_20230101180952.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v3.6.3 | (c) OpenJS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,y=n.hasOwnProperty,a=y.toString,l=a.call(Object),v={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},S=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||S).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.3",E=function(e,t){return new E.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,S)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&v(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!y||!y.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ve(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=E)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{if(d.cssSupportsSelector&&!CSS.supports("selector(:is("+c+"))"))throw new Error;return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===E&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[E]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ye(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ve(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,S=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.cssSupportsSelector=ce(function(){return CSS.supports("selector(*)")&&C.querySelectorAll(":is(:jqfake)")&&!CSS.supports("selector(:is(*,:jqfake))")}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=E,!C.getElementsByName||!C.getElementsByName(E).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&S){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&S){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&S)return t.getElementsByClassName(e)},s=[],y=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&y.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||y.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+E+"-]").length||y.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||y.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||y.push(":checked"),e.querySelectorAll("a#"+E+"+*").length||y.push(".#.+[+~]"),e.querySelectorAll("\\\f"),y.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&y.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&y.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&y.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),y.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),d.cssSupportsSelector||y.push(":has"),y=y.length&&new RegExp(y.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),v=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType&&e.documentElement||e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&v(p,e)?-1:t==C||t.ownerDocument==p&&v(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&S&&!N[t+" "]&&(!s||!s.test(t))&&(!y||!y.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?E.grep(e,function(e){return e===n!==r}):"string"!=typeof n?E.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(E.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),N.test(r[1])&&E.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=S.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)}).prototype=E.fn,D=E(S);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=S.createDocumentFragment().appendChild(S.createElement("div")),(fe=S.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),v.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",v.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",v.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ye(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?E.merge([e],n):n}function ve(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&E(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),S.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;E.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||E.expando+"_"+Ct.guid++;return this[e]=!0,e}}),E.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||E.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?E(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),v.createHTMLDocument=((Ut=S.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),E.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(v.createHTMLDocument?((r=(t=S.implementation.createHTMLDocument("")).createElement("base")).href=S.location.href,t.head.appendChild(r)):t=S),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&E(o).remove(),E.merge([],i.childNodes)));var r,i,o},E.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(E.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},E.expr.pseudos.animated=function(t){return E.grep(E.timers,function(e){return t===e.elem}).length},E.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=E.css(e,"position"),c=E(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=E.css(e,"top"),u=E.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===E.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===E.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=E(e).offset()).top+=E.css(e,"borderTopWidth",!0),i.left+=E.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-E.css(r,"marginTop",!0),left:t.left-i.left-E.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===E.css(e,"position"))e=e.offsetParent;return e||re})}}),E.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;E.fn[t]=function(e){return B(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each(["top","left"],function(e,n){E.cssHooks[n]=_e(v.pixelPosition,function(e,t){if(t)return t=Be(e,n),Pe.test(t)?E(e).position()[n]+"px":t})}),E.each({Height:"height",Width:"width"},function(a,s){E.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){E.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return B(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?E.css(e,t,i):E.style(e,t,n,i)},s,n?e:void 0,n)}})}),E.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){E.fn[t]=function(e){return this.on(t,e)}}),E.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),E.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){E.fn[n]=function(e,t){return 0. - */ - diff --git a/.history/public/zlibproxy/normalize_20230101173118.css b/.history/public/zlibproxy/normalize_20230101173118.css deleted file mode 100644 index c45a85f..0000000 --- a/.history/public/zlibproxy/normalize_20230101173118.css +++ /dev/null @@ -1,349 +0,0 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ - -/* Document - ========================================================================== */ - -/** - * 1. Correct the line height in all browsers. - * 2. Prevent adjustments of font size after orientation changes in iOS. - */ - - html { - line-height: 1.15; /* 1 */ - -webkit-text-size-adjust: 100%; /* 2 */ - } - - /* Sections - ========================================================================== */ - - /** - * Remove the margin in all browsers. - */ - - body { - margin: 0; - } - - /** - * Render the `main` element consistently in IE. - */ - - main { - display: block; - } - - /** - * Correct the font size and margin on `h1` elements within `section` and - * `article` contexts in Chrome, Firefox, and Safari. - */ - - h1 { - font-size: 2em; - margin: 0.67em 0; - } - - /* Grouping content - ========================================================================== */ - - /** - * 1. Add the correct box sizing in Firefox. - * 2. Show the overflow in Edge and IE. - */ - - hr { - box-sizing: content-box; /* 1 */ - height: 0; /* 1 */ - overflow: visible; /* 2 */ - } - - /** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ - - pre { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ - } - - /* Text-level semantics - ========================================================================== */ - - /** - * Remove the gray background on active links in IE 10. - */ - - a { - background-color: transparent; - } - - /** - * 1. Remove the bottom border in Chrome 57- - * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. - */ - - abbr[title] { - border-bottom: none; /* 1 */ - text-decoration: underline; /* 2 */ - text-decoration: underline dotted; /* 2 */ - } - - /** - * Add the correct font weight in Chrome, Edge, and Safari. - */ - - b, - strong { - font-weight: bolder; - } - - /** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ - - code, - kbd, - samp { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ - } - - /** - * Add the correct font size in all browsers. - */ - - small { - font-size: 80%; - } - - /** - * Prevent `sub` and `sup` elements from affecting the line height in - * all browsers. - */ - - sub, - sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; - } - - sub { - bottom: -0.25em; - } - - sup { - top: -0.5em; - } - - /* Embedded content - ========================================================================== */ - - /** - * Remove the border on images inside links in IE 10. - */ - - img { - border-style: none; - } - - /* Forms - ========================================================================== */ - - /** - * 1. Change the font styles in all browsers. - * 2. Remove the margin in Firefox and Safari. - */ - - button, - input, - optgroup, - select, - textarea { - font-family: inherit; /* 1 */ - font-size: 100%; /* 1 */ - line-height: 1.15; /* 1 */ - margin: 0; /* 2 */ - } - - /** - * Show the overflow in IE. - * 1. Show the overflow in Edge. - */ - - button, - input { /* 1 */ - overflow: visible; - } - - /** - * Remove the inheritance of text transform in Edge, Firefox, and IE. - * 1. Remove the inheritance of text transform in Firefox. - */ - - button, - select { /* 1 */ - text-transform: none; - } - - /** - * Correct the inability to style clickable types in iOS and Safari. - */ - - button, - [type="button"], - [type="reset"], - [type="submit"] { - -webkit-appearance: button; - } - - /** - * Remove the inner border and padding in Firefox. - */ - - button::-moz-focus-inner, - [type="button"]::-moz-focus-inner, - [type="reset"]::-moz-focus-inner, - [type="submit"]::-moz-focus-inner { - border-style: none; - padding: 0; - } - - /** - * Restore the focus styles unset by the previous rule. - */ - - button:-moz-focusring, - [type="button"]:-moz-focusring, - [type="reset"]:-moz-focusring, - [type="submit"]:-moz-focusring { - outline: 1px dotted ButtonText; - } - - /** - * Correct the padding in Firefox. - */ - - fieldset { - padding: 0.35em 0.75em 0.625em; - } - - /** - * 1. Correct the text wrapping in Edge and IE. - * 2. Correct the color inheritance from `fieldset` elements in IE. - * 3. Remove the padding so developers are not caught out when they zero out - * `fieldset` elements in all browsers. - */ - - legend { - box-sizing: border-box; /* 1 */ - color: inherit; /* 2 */ - display: table; /* 1 */ - max-width: 100%; /* 1 */ - padding: 0; /* 3 */ - white-space: normal; /* 1 */ - } - - /** - * Add the correct vertical alignment in Chrome, Firefox, and Opera. - */ - - progress { - vertical-align: baseline; - } - - /** - * Remove the default vertical scrollbar in IE 10+. - */ - - textarea { - overflow: auto; - } - - /** - * 1. Add the correct box sizing in IE 10. - * 2. Remove the padding in IE 10. - */ - - [type="checkbox"], - [type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ - } - - /** - * Correct the cursor style of increment and decrement buttons in Chrome. - */ - - [type="number"]::-webkit-inner-spin-button, - [type="number"]::-webkit-outer-spin-button { - height: auto; - } - - /** - * 1. Correct the odd appearance in Chrome and Safari. - * 2. Correct the outline style in Safari. - */ - - [type="search"] { - -webkit-appearance: textfield; /* 1 */ - outline-offset: -2px; /* 2 */ - } - - /** - * Remove the inner padding in Chrome and Safari on macOS. - */ - - [type="search"]::-webkit-search-decoration { - -webkit-appearance: none; - } - - /** - * 1. Correct the inability to style clickable types in iOS and Safari. - * 2. Change font properties to `inherit` in Safari. - */ - - ::-webkit-file-upload-button { - -webkit-appearance: button; /* 1 */ - font: inherit; /* 2 */ - } - - /* Interactive - ========================================================================== */ - - /* - * Add the correct display in Edge, IE 10+, and Firefox. - */ - - details { - display: block; - } - - /* - * Add the correct display in all browsers. - */ - - summary { - display: list-item; - } - - /* Misc - ========================================================================== */ - - /** - * Add the correct display in IE 10+. - */ - - template { - display: none; - } - - /** - * Add the correct display in IE 10. - */ - - [hidden] { - display: none; - } \ No newline at end of file diff --git a/.history/public/zlibproxy/sakura-dark_20230101175310.css b/.history/public/zlibproxy/sakura-dark_20230101175310.css deleted file mode 100644 index e69de29..0000000 diff --git a/.history/public/zlibproxy/sakura-dark_20230101175312.css b/.history/public/zlibproxy/sakura-dark_20230101175312.css deleted file mode 100644 index 072d5c1..0000000 --- a/.history/public/zlibproxy/sakura-dark_20230101175312.css +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Copyright (C) 2023 enoch@Laysense.com - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - diff --git a/.history/public/zlibproxy/sakura-dark_20230101175315.css b/.history/public/zlibproxy/sakura-dark_20230101175315.css deleted file mode 100644 index 1686bfc..0000000 --- a/.history/public/zlibproxy/sakura-dark_20230101175315.css +++ /dev/null @@ -1,223 +0,0 @@ -/* $color-text: #dedce5; */ -/* Sakura.css v1.4.1 - * ================ - * Minimal css theme. - * Project: https://github.com/oxalorg/sakura/ - */ -/* Body */ -html { - font-size: 62.5%; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; - } - - body { - font-size: 1.8rem; - line-height: 1.618; - max-width: 38em; - margin: auto; - color: #c9c9c9; - background-color: #222222; - padding: 13px; - } - - @media (max-width: 684px) { - body { - font-size: 1.53rem; - } - } - @media (max-width: 382px) { - body { - font-size: 1.35rem; - } - } - h1, h2, h3, h4, h5, h6 { - line-height: 1.1; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; - font-weight: 700; - margin-top: 3rem; - margin-bottom: 1.5rem; - overflow-wrap: break-word; - word-wrap: break-word; - -ms-word-break: break-all; - word-break: break-word; - } - - h1 { - font-size: 2.35em; - } - - h2 { - font-size: 2em; - } - - h3 { - font-size: 1.75em; - } - - h4 { - font-size: 1.5em; - } - - h5 { - font-size: 1.25em; - } - - h6 { - font-size: 1em; - } - - p { - margin-top: 0px; - margin-bottom: 2.5rem; - } - - small, sub, sup { - font-size: 75%; - } - - hr { - border-color: #ffffff; - } - - a { - text-decoration: none; - color: #ffffff; - } - a:visited { - color: #e6e6e6; - } - a:hover { - color: #c9c9c9; - border-bottom: 2px solid #c9c9c9; - } - - ul { - padding-left: 1.4em; - margin-top: 0px; - margin-bottom: 2.5rem; - } - - li { - margin-bottom: 0.4em; - } - - blockquote { - margin-left: 0px; - margin-right: 0px; - padding-left: 1em; - padding-top: 0.8em; - padding-bottom: 0.8em; - padding-right: 0.8em; - border-left: 5px solid #ffffff; - margin-bottom: 2.5rem; - background-color: #4a4a4a; - } - - blockquote p { - margin-bottom: 0; - } - - img, video { - height: auto; - max-width: 100%; - margin-top: 0px; - margin-bottom: 2.5rem; - } - - /* Pre and Code */ - pre { - background-color: #4a4a4a; - display: block; - padding: 1em; - overflow-x: auto; - margin-top: 0px; - margin-bottom: 2.5rem; - font-size: 0.9em; - } - - code, kbd, samp { - font-size: 0.9em; - padding: 0 0.5em; - background-color: #4a4a4a; - white-space: pre-wrap; - } - - pre > code { - padding: 0; - background-color: transparent; - white-space: pre; - font-size: 1em; - } - - /* Tables */ - table { - text-align: justify; - width: 100%; - border-collapse: collapse; - } - - td, th { - padding: 0.5em; - border-bottom: 1px solid #4a4a4a; - } - - /* Buttons, forms and input */ - input, textarea { - border: 1px solid #c9c9c9; - } - input:focus, textarea:focus { - border: 1px solid #ffffff; - } - - textarea { - width: 100%; - } - - .button, button, input[type=submit], input[type=reset], input[type=button] { - display: inline-block; - padding: 5px 10px; - text-align: center; - text-decoration: none; - white-space: nowrap; - background-color: #ffffff; - color: #222222; - border-radius: 1px; - border: 1px solid #ffffff; - cursor: pointer; - box-sizing: border-box; - } - .button[disabled], button[disabled], input[type=submit][disabled], input[type=reset][disabled], input[type=button][disabled] { - cursor: default; - opacity: 0.5; - } - .button:focus:enabled, .button:hover:enabled, button:focus:enabled, button:hover:enabled, input[type=submit]:focus:enabled, input[type=submit]:hover:enabled, input[type=reset]:focus:enabled, input[type=reset]:hover:enabled, input[type=button]:focus:enabled, input[type=button]:hover:enabled { - background-color: #c9c9c9; - border-color: #c9c9c9; - color: #222222; - outline: 0; - } - - textarea, select, input { - color: #c9c9c9; - padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */ - margin-bottom: 10px; - background-color: #4a4a4a; - border: 1px solid #4a4a4a; - border-radius: 4px; - box-shadow: none; - box-sizing: border-box; - } - textarea:focus, select:focus, input:focus { - border: 1px solid #ffffff; - outline: 0; - } - - input[type=checkbox]:focus { - outline: 1px dotted #ffffff; - } - - label, legend, fieldset { - display: block; - margin-bottom: 0.5rem; - font-weight: 600; - } \ No newline at end of file diff --git a/.history/public/zlibproxy/sakura_20230101173132.css b/.history/public/zlibproxy/sakura_20230101173132.css deleted file mode 100644 index e69de29..0000000 diff --git a/.history/public/zlibproxy/sakura_20230101173134.css b/.history/public/zlibproxy/sakura_20230101173134.css deleted file mode 100644 index 072d5c1..0000000 --- a/.history/public/zlibproxy/sakura_20230101173134.css +++ /dev/null @@ -1,17 +0,0 @@ -/** - * Copyright (C) 2023 enoch@Laysense.com - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - diff --git a/.history/public/zlibproxy/sakura_20230101173137.css b/.history/public/zlibproxy/sakura_20230101173137.css deleted file mode 100644 index 6b9c6bf..0000000 --- a/.history/public/zlibproxy/sakura_20230101173137.css +++ /dev/null @@ -1,222 +0,0 @@ -/* Sakura.css v1.4.1 - * ================ - * Minimal css theme. - * Project: https://github.com/oxalorg/sakura/ - */ -/* Body */ -html { - font-size: 62.5%; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; - } - - body { - font-size: 1.8rem; - line-height: 1.618; - max-width: 38em; - margin: auto; - color: #4a4a4a; - background-color: #f9f9f9; - padding: 13px; - } - - @media (max-width: 684px) { - body { - font-size: 1.53rem; - } - } - @media (max-width: 382px) { - body { - font-size: 1.35rem; - } - } - h1, h2, h3, h4, h5, h6 { - line-height: 1.1; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif; - font-weight: 700; - margin-top: 3rem; - margin-bottom: 1.5rem; - overflow-wrap: break-word; - word-wrap: break-word; - -ms-word-break: break-all; - word-break: break-word; - } - - h1 { - font-size: 2.35em; - } - - h2 { - font-size: 2em; - } - - h3 { - font-size: 1.75em; - } - - h4 { - font-size: 1.5em; - } - - h5 { - font-size: 1.25em; - } - - h6 { - font-size: 1em; - } - - p { - margin-top: 0px; - margin-bottom: 2.5rem; - } - - small, sub, sup { - font-size: 75%; - } - - hr { - border-color: #1d7484; - } - - a { - text-decoration: none; - color: #1d7484; - } - a:visited { - color: #144f5a; - } - a:hover { - color: #982c61; - border-bottom: 2px solid #4a4a4a; - } - - ul { - padding-left: 1.4em; - margin-top: 0px; - margin-bottom: 2.5rem; - } - - li { - margin-bottom: 0.4em; - } - - blockquote { - margin-left: 0px; - margin-right: 0px; - padding-left: 1em; - padding-top: 0.8em; - padding-bottom: 0.8em; - padding-right: 0.8em; - border-left: 5px solid #1d7484; - margin-bottom: 2.5rem; - background-color: #f1f1f1; - } - - blockquote p { - margin-bottom: 0; - } - - img, video { - height: auto; - max-width: 100%; - margin-top: 0px; - margin-bottom: 2.5rem; - } - - /* Pre and Code */ - pre { - background-color: #f1f1f1; - display: block; - padding: 1em; - overflow-x: auto; - margin-top: 0px; - margin-bottom: 2.5rem; - font-size: 0.9em; - } - - code, kbd, samp { - font-size: 0.9em; - padding: 0 0.5em; - background-color: #f1f1f1; - white-space: pre-wrap; - } - - pre > code { - padding: 0; - background-color: transparent; - white-space: pre; - font-size: 1em; - } - - /* Tables */ - table { - text-align: justify; - width: 100%; - border-collapse: collapse; - } - - td, th { - padding: 0.5em; - border-bottom: 1px solid #f1f1f1; - } - - /* Buttons, forms and input */ - input, textarea { - border: 1px solid #4a4a4a; - } - input:focus, textarea:focus { - border: 1px solid #1d7484; - } - - textarea { - width: 100%; - } - - .button, button, input[type=submit], input[type=reset], input[type=button] { - display: inline-block; - padding: 5px 10px; - text-align: center; - text-decoration: none; - white-space: nowrap; - background-color: #1d7484; - color: #f9f9f9; - border-radius: 1px; - border: 1px solid #1d7484; - cursor: pointer; - box-sizing: border-box; - } - .button[disabled], button[disabled], input[type=submit][disabled], input[type=reset][disabled], input[type=button][disabled] { - cursor: default; - opacity: 0.5; - } - .button:focus:enabled, .button:hover:enabled, button:focus:enabled, button:hover:enabled, input[type=submit]:focus:enabled, input[type=submit]:hover:enabled, input[type=reset]:focus:enabled, input[type=reset]:hover:enabled, input[type=button]:focus:enabled, input[type=button]:hover:enabled { - background-color: #982c61; - border-color: #982c61; - color: #f9f9f9; - outline: 0; - } - - textarea, select, input { - color: #4a4a4a; - padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */ - margin-bottom: 10px; - background-color: #f1f1f1; - border: 1px solid #f1f1f1; - border-radius: 4px; - box-shadow: none; - box-sizing: border-box; - } - textarea:focus, select:focus, input:focus { - border: 1px solid #1d7484; - outline: 0; - } - - input[type=checkbox]:focus { - outline: 1px dotted #1d7484; - } - - label, legend, fieldset { - display: block; - margin-bottom: 0.5rem; - font-weight: 600; - } \ No newline at end of file diff --git a/.history/public/zlibproxy_20230101172406 b/.history/public/zlibproxy_20230101172406 deleted file mode 100644 index e69de29..0000000 diff --git a/.history/public/zlibproxy_20230101172408 b/.history/public/zlibproxy_20230101172408 deleted file mode 100644 index 593161e..0000000 --- a/.history/public/zlibproxy_20230101172408 +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/support/helpers_20230101172004.php b/.history/support/helpers_20230101172004.php deleted file mode 100644 index 6302810..0000000 --- a/.history/support/helpers_20230101172004.php +++ /dev/null @@ -1,525 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use support\Container; -use support\Request; -use support\Response; -use support\Translation; -use support\view\Raw; -use support\view\Blade; -use support\view\ThinkPHP; -use support\view\Twig; -use Workerman\Worker; -use Webman\App; -use Webman\Config; -use Webman\Route; - -// Webman version -const WEBMAN_VERSION = '1.4'; - -// Project base path -define('BASE_PATH', dirname(__DIR__)); - -/** - * return the program execute directory - * @param string $path - * @return string - */ -function run_path(string $path = ''): string -{ - static $run_path = ''; - if (!$run_path) { - $run_path = \is_phar() ? \dirname(\Phar::running(false)) : BASE_PATH; - } - return \path_combine($run_path, $path); -} - -/** - * if the param $path equal false,will return this program current execute directory - * @param string|false $path - * @return string - */ -function base_path($path = ''): string -{ - if (false === $path) { - return \run_path(); - } - return \path_combine(BASE_PATH, $path); -} - -/** - * App path - * @param string $path - * @return string - */ -function app_path(string $path = ''): string -{ - return \path_combine(BASE_PATH . DIRECTORY_SEPARATOR . 'app', $path); -} - -/** - * Public path - * @param string $path - * @return string - */ -function public_path(string $path = ''): string -{ - static $public_path = ''; - if (!$public_path) { - $public_path = \config('app.public_path') ? : \run_path('public'); - } - return \path_combine($public_path, $path); -} - -/** - * Config path - * @param string $path - * @return string - */ -function config_path(string $path = ''): string -{ - return \path_combine(BASE_PATH . DIRECTORY_SEPARATOR . 'config', $path); -} - -/** - * Runtime path - * @param string $path - * @return string - */ -function runtime_path(string $path = ''): string -{ - static $runtime_path = ''; - if (!$runtime_path) { - $runtime_path = \config('app.runtime_path') ? : \run_path('runtime'); - } - return \path_combine($runtime_path, $path); -} - -/** - * Generate paths based on given information - * @param string $front - * @param string $back - * @return string - */ -function path_combine(string $front, string $back): string -{ - return $front . ($back ? (DIRECTORY_SEPARATOR . ltrim($back, DIRECTORY_SEPARATOR)) : $back); -} - -/** - * Response - * @param int $status - * @param array $headers - * @param string $body - * @return Response - */ -function response(string $body = '', int $status = 200, array $headers = []): Response -{ - return new Response($status, $headers, $body); -} - -/** - * Json response - * @param $data - * @param int $options - * @return Response - */ -function json($data, int $options = JSON_UNESCAPED_UNICODE): Response -{ - return new Response(200, ['Content-Type' => 'application/json'], \json_encode($data, $options)); -} - -/** - * Xml response - * @param $xml - * @return Response - */ -function xml($xml): Response -{ - if ($xml instanceof SimpleXMLElement) { - $xml = $xml->asXML(); - } - return new Response(200, ['Content-Type' => 'text/xml'], $xml); -} - -/** - * Jsonp response - * @param $data - * @param string $callback_name - * @return Response - */ -function jsonp($data, string $callback_name = 'callback'): Response -{ - if (!\is_scalar($data) && null !== $data) { - $data = \json_encode($data); - } - return new Response(200, [], "$callback_name($data)"); -} - -/** - * Redirect response - * @param string $location - * @param int $status - * @param array $headers - * @return Response - */ -function redirect(string $location, int $status = 302, array $headers = []): Response -{ - $response = new Response($status, ['Location' => $location]); - if (!empty($headers)) { - $response->withHeaders($headers); - } - return $response; -} - -/** - * View response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function view(string $template, array $vars = [], string $app = null): Response -{ - $request = \request(); - $plugin = $request->plugin ?? ''; - $handler = \config($plugin ? "plugin.$plugin.view.handler" : 'view.handler'); - return new Response(200, [], $handler::render($template, $vars, $app)); -} - -/** - * Raw view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - * @throws Throwable - */ -function raw_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Raw::render($template, $vars, $app)); -} - -/** - * Blade view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function blade_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Blade::render($template, $vars, $app)); -} - -/** - * Think view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function think_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], ThinkPHP::render($template, $vars, $app)); -} - -/** - * Twig view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function twig_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Twig::render($template, $vars, $app)); -} - -/** - * Get request - * @return \Webman\Http\Request|Request|null - */ -function request() -{ - return App::request(); -} - -/** - * Get config - * @param string|null $key - * @param $default - * @return array|mixed|null - */ -function config(string $key = null, $default = null) -{ - return Config::get($key, $default); -} - -/** - * Create url - * @param string $name - * @param ...$parameters - * @return string - */ -function route(string $name, ...$parameters): string -{ - $route = Route::getByName($name); - if (!$route) { - return ''; - } - - if (!$parameters) { - return $route->url(); - } - - if (\is_array(\current($parameters))) { - $parameters = \current($parameters); - } - - return $route->url($parameters); -} - -/** - * Session - * @param mixed $key - * @param mixed $default - * @return mixed - */ -function session($key = null, $default = null) -{ - $session = \request()->session(); - if (null === $key) { - return $session; - } - if (\is_array($key)) { - $session->put($key); - return null; - } - if (\strpos($key, '.')) { - $key_array = \explode('.', $key); - $value = $session->all(); - foreach ($key_array as $index) { - if (!isset($value[$index])) { - return $default; - } - $value = $value[$index]; - } - return $value; - } - return $session->get($key, $default); -} - -/** - * Translation - * @param string $id - * @param array $parameters - * @param string|null $domain - * @param string|null $locale - * @return string - */ -function trans(string $id, array $parameters = [], string $domain = null, string $locale = null): string -{ - $res = Translation::trans($id, $parameters, $domain, $locale); - return $res === '' ? $id : $res; -} - -/** - * Locale - * @param string|null $locale - * @return void - */ -function locale(string $locale = null): string -{ - if (!$locale) { - return Translation::getLocale(); - } - Translation::setLocale($locale); -} - -/** - * 404 not found - * @return Response - */ -function not_found(): Response -{ - return new Response(404, [], \file_get_contents(public_path() . '/404.html')); -} - -/** - * Copy dir - * @param string $source - * @param string $dest - * @param bool $overwrite - * @return void - */ -function copy_dir(string $source, string $dest, bool $overwrite = false) -{ - if (\is_dir($source)) { - if (!is_dir($dest)) { - \mkdir($dest); - } - $files = \scandir($source); - foreach ($files as $file) { - if ($file !== "." && $file !== "..") { - \copy_dir("$source/$file", "$dest/$file"); - } - } - } else if (\file_exists($source) && ($overwrite || !\file_exists($dest))) { - \copy($source, $dest); - } -} - -/** - * Remove dir - * @param string $dir - * @return bool - */ -function remove_dir(string $dir): bool -{ - if (\is_link($dir) || \is_file($dir)) { - return \unlink($dir); - } - $files = \array_diff(\scandir($dir), array('.', '..')); - foreach ($files as $file) { - (\is_dir("$dir/$file") && !\is_link($dir)) ? \remove_dir("$dir/$file") : \unlink("$dir/$file"); - } - return \rmdir($dir); -} - -/** - * Bind worker - * @param $worker - * @param $class - */ -function worker_bind($worker, $class) -{ - $callback_map = [ - 'onConnect', - 'onMessage', - 'onClose', - 'onError', - 'onBufferFull', - 'onBufferDrain', - 'onWorkerStop', - 'onWebSocketConnect' - ]; - foreach ($callback_map as $name) { - if (\method_exists($class, $name)) { - $worker->$name = [$class, $name]; - } - } - if (\method_exists($class, 'onWorkerStart')) { - \call_user_func([$class, 'onWorkerStart'], $worker); - } -} - -/** - * Start worker - * @param $process_name - * @param $config - * @return void - */ -function worker_start($process_name, $config) -{ - $worker = new Worker($config['listen'] ?? null, $config['context'] ?? []); - $property_map = [ - 'count', - 'user', - 'group', - 'reloadable', - 'reusePort', - 'transport', - 'protocol', - ]; - $worker->name = $process_name; - foreach ($property_map as $property) { - if (isset($config[$property])) { - $worker->$property = $config[$property]; - } - } - - $worker->onWorkerStart = function ($worker) use ($config) { - require_once \base_path() . '/support/bootstrap.php'; - - foreach ($config['services'] ?? [] as $server) { - if (!\class_exists($server['handler'])) { - echo "process error: class {$server['handler']} not exists\r\n"; - continue; - } - $listen = new Worker($server['listen'] ?? null, $server['context'] ?? []); - if (isset($server['listen'])) { - echo "listen: {$server['listen']}\n"; - } - $instance = Container::make($server['handler'], $server['constructor'] ?? []); - \worker_bind($listen, $instance); - $listen->listen(); - } - - if (isset($config['handler'])) { - if (!\class_exists($config['handler'])) { - echo "process error: class {$config['handler']} not exists\r\n"; - return; - } - - $instance = Container::make($config['handler'], $config['constructor'] ?? []); - \worker_bind($worker, $instance); - } - }; -} - -/** - * Get realpath - * @param string $file_path - * @return string - */ -function get_realpath(string $file_path): string -{ - if (\strpos($file_path, 'phar://') === 0) { - return $file_path; - } else { - return \realpath($file_path); - } -} - -/** - * Is phar - * @return bool - */ -function is_phar(): bool -{ - return \class_exists(\Phar::class, false) && Phar::running(); -} - -/** - * Get cpu count - * @return int - */ -function cpu_count(): int -{ - // Windows does not support the number of processes setting. - if (\DIRECTORY_SEPARATOR === '\\') { - return 1; - } - $count = 4; - if (\is_callable('shell_exec')) { - if (\strtolower(PHP_OS) === 'darwin') { - $count = (int)\shell_exec('sysctl -n machdep.cpu.core_count'); - } else { - $count = (int)\shell_exec('nproc'); - } - } - return $count > 0 ? $count : 4; -} diff --git a/.history/support/helpers_20230102152429.php b/.history/support/helpers_20230102152429.php deleted file mode 100644 index 68f88e1..0000000 --- a/.history/support/helpers_20230102152429.php +++ /dev/null @@ -1,543 +0,0 @@ - - * @copyright walkor - * @link http://www.workerman.net/ - * @license http://www.opensource.org/licenses/mit-license.php MIT License - */ - -use support\Container; -use support\Request; -use support\Response; -use support\Translation; -use support\view\Raw; -use support\view\Blade; -use support\view\ThinkPHP; -use support\view\Twig; -use Workerman\Worker; -use Webman\App; -use Webman\Config; -use Webman\Route; - -// Webman version -const WEBMAN_VERSION = '1.4'; - -// Project base path -define('BASE_PATH', dirname(__DIR__)); - -/** - * return the program execute directory - * @param string $path - * @return string - */ -function run_path(string $path = ''): string -{ - static $run_path = ''; - if (!$run_path) { - $run_path = \is_phar() ? \dirname(\Phar::running(false)) : BASE_PATH; - } - return \path_combine($run_path, $path); -} - -/** - * if the param $path equal false,will return this program current execute directory - * @param string|false $path - * @return string - */ -function base_path($path = ''): string -{ - if (false === $path) { - return \run_path(); - } - return \path_combine(BASE_PATH, $path); -} - -/** - * App path - * @param string $path - * @return string - */ -function app_path(string $path = ''): string -{ - return \path_combine(BASE_PATH . DIRECTORY_SEPARATOR . 'app', $path); -} - -/** - * Public path - * @param string $path - * @return string - */ -function public_path(string $path = ''): string -{ - static $public_path = ''; - if (!$public_path) { - $public_path = \config('app.public_path') ? : \run_path('public'); - } - return \path_combine($public_path, $path); -} - -/** - * Config path - * @param string $path - * @return string - */ -function config_path(string $path = ''): string -{ - return \path_combine(BASE_PATH . DIRECTORY_SEPARATOR . 'config', $path); -} - -/** - * Runtime path - * @param string $path - * @return string - */ -function runtime_path(string $path = ''): string -{ - static $runtime_path = ''; - if (!$runtime_path) { - $runtime_path = \config('app.runtime_path') ? : \run_path('runtime'); - } - return \path_combine($runtime_path, $path); -} - -/** - * Generate paths based on given information - * @param string $front - * @param string $back - * @return string - */ -function path_combine(string $front, string $back): string -{ - return $front . ($back ? (DIRECTORY_SEPARATOR . ltrim($back, DIRECTORY_SEPARATOR)) : $back); -} - -/** - * Response - * @param int $status - * @param array $headers - * @param string $body - * @return Response - */ -function response(string $body = '', int $status = 200, array $headers = []): Response -{ - return new Response($status, $headers, $body); -} - -/** - * Json response - * @param $data - * @param int $options - * @return Response - */ -function json($data, int $options = JSON_UNESCAPED_UNICODE): Response -{ - return new Response(200, ['Content-Type' => 'application/json'], \json_encode($data, $options)); -} - -/** - * Xml response - * @param $xml - * @return Response - */ -function xml($xml): Response -{ - if ($xml instanceof SimpleXMLElement) { - $xml = $xml->asXML(); - } - return new Response(200, ['Content-Type' => 'text/xml'], $xml); -} - -/** - * Jsonp response - * @param $data - * @param string $callback_name - * @return Response - */ -function jsonp($data, string $callback_name = 'callback'): Response -{ - if (!\is_scalar($data) && null !== $data) { - $data = \json_encode($data); - } - return new Response(200, [], "$callback_name($data)"); -} - -/** - * Redirect response - * @param string $location - * @param int $status - * @param array $headers - * @return Response - */ -function redirect(string $location, int $status = 302, array $headers = []): Response -{ - $response = new Response($status, ['Location' => $location]); - if (!empty($headers)) { - $response->withHeaders($headers); - } - return $response; -} - -/** - * View response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function view(string $template, array $vars = [], string $app = null): Response -{ - $request = \request(); - $plugin = $request->plugin ?? ''; - $handler = \config($plugin ? "plugin.$plugin.view.handler" : 'view.handler'); - return new Response(200, [], $handler::render($template, $vars, $app)); -} - -/** - * Raw view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - * @throws Throwable - */ -function raw_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Raw::render($template, $vars, $app)); -} - -/** - * Blade view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function blade_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Blade::render($template, $vars, $app)); -} - -/** - * Think view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function think_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], ThinkPHP::render($template, $vars, $app)); -} - -/** - * Twig view response - * @param string $template - * @param array $vars - * @param string|null $app - * @return Response - */ -function twig_view(string $template, array $vars = [], string $app = null): Response -{ - return new Response(200, [], Twig::render($template, $vars, $app)); -} - -/** - * Get request - * @return \Webman\Http\Request|Request|null - */ -function request() -{ - return App::request(); -} - -/** - * Get config - * @param string|null $key - * @param $default - * @return array|mixed|null - */ -function config(string $key = null, $default = null) -{ - return Config::get($key, $default); -} - -/** - * Create url - * @param string $name - * @param ...$parameters - * @return string - */ -function route(string $name, ...$parameters): string -{ - $route = Route::getByName($name); - if (!$route) { - return ''; - } - - if (!$parameters) { - return $route->url(); - } - - if (\is_array(\current($parameters))) { - $parameters = \current($parameters); - } - - return $route->url($parameters); -} - -/** - * Session - * @param mixed $key - * @param mixed $default - * @return mixed - */ -function session($key = null, $default = null) -{ - $session = \request()->session(); - if (null === $key) { - return $session; - } - if (\is_array($key)) { - $session->put($key); - return null; - } - if (\strpos($key, '.')) { - $key_array = \explode('.', $key); - $value = $session->all(); - foreach ($key_array as $index) { - if (!isset($value[$index])) { - return $default; - } - $value = $value[$index]; - } - return $value; - } - return $session->get($key, $default); -} - -/** - * Translation - * @param string $id - * @param array $parameters - * @param string|null $domain - * @param string|null $locale - * @return string - */ -function trans(string $id, array $parameters = [], string $domain = null, string $locale = null): string -{ - $res = Translation::trans($id, $parameters, $domain, $locale); - return $res === '' ? $id : $res; -} - -/** - * Locale - * @param string|null $locale - * @return void - */ -function locale(string $locale = null): string -{ - if (!$locale) { - return Translation::getLocale(); - } - Translation::setLocale($locale); -} - -/** - * 404 not found - * @return Response - */ -function not_found(): Response -{ - return new Response(404, [], \file_get_contents(public_path() . '/404.html')); -} - -/** - * Copy dir - * @param string $source - * @param string $dest - * @param bool $overwrite - * @return void - */ -function copy_dir(string $source, string $dest, bool $overwrite = false) -{ - if (\is_dir($source)) { - if (!is_dir($dest)) { - \mkdir($dest); - } - $files = \scandir($source); - foreach ($files as $file) { - if ($file !== "." && $file !== "..") { - \copy_dir("$source/$file", "$dest/$file"); - } - } - } else if (\file_exists($source) && ($overwrite || !\file_exists($dest))) { - \copy($source, $dest); - } -} - -/** - * Remove dir - * @param string $dir - * @return bool - */ -function remove_dir(string $dir): bool -{ - if (\is_link($dir) || \is_file($dir)) { - return \unlink($dir); - } - $files = \array_diff(\scandir($dir), array('.', '..')); - foreach ($files as $file) { - (\is_dir("$dir/$file") && !\is_link($dir)) ? \remove_dir("$dir/$file") : \unlink("$dir/$file"); - } - return \rmdir($dir); -} - -/** - * Bind worker - * @param $worker - * @param $class - */ -function worker_bind($worker, $class) -{ - $callback_map = [ - 'onConnect', - 'onMessage', - 'onClose', - 'onError', - 'onBufferFull', - 'onBufferDrain', - 'onWorkerStop', - 'onWebSocketConnect' - ]; - foreach ($callback_map as $name) { - if (\method_exists($class, $name)) { - $worker->$name = [$class, $name]; - } - } - if (\method_exists($class, 'onWorkerStart')) { - \call_user_func([$class, 'onWorkerStart'], $worker); - } -} - -/** - * Start worker - * @param $process_name - * @param $config - * @return void - */ -function worker_start($process_name, $config) -{ - $worker = new Worker($config['listen'] ?? null, $config['context'] ?? []); - $property_map = [ - 'count', - 'user', - 'group', - 'reloadable', - 'reusePort', - 'transport', - 'protocol', - ]; - $worker->name = $process_name; - foreach ($property_map as $property) { - if (isset($config[$property])) { - $worker->$property = $config[$property]; - } - } - - $worker->onWorkerStart = function ($worker) use ($config) { - require_once \base_path() . '/support/bootstrap.php'; - - foreach ($config['services'] ?? [] as $server) { - if (!\class_exists($server['handler'])) { - echo "process error: class {$server['handler']} not exists\r\n"; - continue; - } - $listen = new Worker($server['listen'] ?? null, $server['context'] ?? []); - if (isset($server['listen'])) { - echo "listen: {$server['listen']}\n"; - } - $instance = Container::make($server['handler'], $server['constructor'] ?? []); - \worker_bind($listen, $instance); - $listen->listen(); - } - - if (isset($config['handler'])) { - if (!\class_exists($config['handler'])) { - echo "process error: class {$config['handler']} not exists\r\n"; - return; - } - - $instance = Container::make($config['handler'], $config['constructor'] ?? []); - \worker_bind($worker, $instance); - } - }; -} - -/** - * Get realpath - * @param string $file_path - * @return string - */ -function get_realpath(string $file_path): string -{ - if (\strpos($file_path, 'phar://') === 0) { - return $file_path; - } else { - return \realpath($file_path); - } -} - -/** - * Is phar - * @return bool - */ -function is_phar(): bool -{ - return \class_exists(\Phar::class, false) && Phar::running(); -} - -/** - * Get cpu count - * @return int - */ -function cpu_count(): int -{ - // Windows does not support the number of processes setting. - if (\DIRECTORY_SEPARATOR === '\\') { - return 1; - } - $count = 4; - if (\is_callable('shell_exec')) { - if (\strtolower(PHP_OS) === 'darwin') { - $count = (int)\shell_exec('sysctl -n machdep.cpu.core_count'); - } else { - $count = (int)\shell_exec('nproc'); - } - } - return $count > 0 ? $count : 4; -} - -function trans_byte($byte){ - $KB = 1024; - $MB = 1024 * $KB; - $GB = 1024 * $MB; - $TB = 1024 * $GB; - if ($byte < $KB) { - return $byte . "B"; - } elseif ($byte < $MB) { - return round($byte / $KB, 2) . "KB"; - } elseif ($byte < $GB) { - return round($byte / $MB, 2) . "MB"; - } elseif ($byte < $TB) { - return round($byte / $GB, 2) . "GB"; - } else { - return round($byte / $TB, 2) . "TB"; - } -} diff --git a/.history/test_20230101184303.php b/.history/test_20230101184303.php deleted file mode 100644 index e69de29..0000000 diff --git a/.history/test_20230101184304.php b/.history/test_20230101184304.php deleted file mode 100644 index 593161e..0000000 --- a/.history/test_20230101184304.php +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - diff --git a/.history/test_20230101184538.php b/.history/test_20230101184538.php deleted file mode 100644 index 9ba8459..0000000 --- a/.history/test_20230101184538.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/'); -print_r($response); - diff --git a/.history/test_20230101184553.php b/.history/test_20230101184553.php deleted file mode 100644 index 3b70fd9..0000000 --- a/.history/test_20230101184553.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/'); -print_r($response); - diff --git a/.history/test_20230101184603.php b/.history/test_20230101184603.php deleted file mode 100644 index ae0536d..0000000 --- a/.history/test_20230101184603.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/'); -print_r($response); - diff --git a/.history/test_20230101184620.php b/.history/test_20230101184620.php deleted file mode 100644 index f7bcaf7..0000000 --- a/.history/test_20230101184620.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/'); -print_r($response); - diff --git a/.history/test_20230101184658.php b/.history/test_20230101184658.php deleted file mode 100644 index 55f6b98..0000000 --- a/.history/test_20230101184658.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/'); -print_r($response); - diff --git a/.history/test_20230101184836.php b/.history/test_20230101184836.php deleted file mode 100644 index 9e8985f..0000000 --- a/.history/test_20230101184836.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://google.com/')->body(); -print_r($response); - diff --git a/.history/test_20230101184907.php b/.history/test_20230101184907.php deleted file mode 100644 index e6f82ad..0000000 --- a/.history/test_20230101184907.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.workerman.net/plugin/94')->body(); -print_r($response); - diff --git a/.history/test_20230101185011.php b/.history/test_20230101185011.php deleted file mode 100644 index 0f500ba..0000000 --- a/.history/test_20230101185011.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -print_r($response); - diff --git a/.history/test_20230101193653.php b/.history/test_20230101193653.php deleted file mode 100644 index 8164f93..0000000 --- a/.history/test_20230101193653.php +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -print_r(parse_url('/?remix_userkey=1e8f326d20604ada541b4f3a67d19946&remix_userid=22770140')); - diff --git a/.history/test_20230101194107.php b/.history/test_20230101194107.php deleted file mode 100644 index e310985..0000000 --- a/.history/test_20230101194107.php +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -$url=parse_url('/?remix_userkey=1e8f326d20604ada541b4f3a67d19946&remix_userid=22770140'); -$queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } -print_r($params); diff --git a/.history/test_20230101194121.php b/.history/test_20230101194121.php deleted file mode 100644 index d6d5b42..0000000 --- a/.history/test_20230101194121.php +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -$url=parse_url('remix_userkey=1e8f326d20604ada541b4f3a67d19946&remix_userid=22770140'); -$queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } -print_r($params); diff --git a/.history/test_20230101194141.php b/.history/test_20230101194141.php deleted file mode 100644 index 74b7871..0000000 --- a/.history/test_20230101194141.php +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -$url='/?remix_userkey=1e8f326d20604ada541b4f3a67d19946&remix_userid=22770140'; -$queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } -print_r($params); diff --git a/.history/test_20230101194201.php b/.history/test_20230101194201.php deleted file mode 100644 index eac1b69..0000000 --- a/.history/test_20230101194201.php +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -get('https://www.bing.com/?mkt=zh-CN')->body(); -$url=parse_url('/?remix_userkey=1e8f326d20604ada541b4f3a67d19946&remix_userid=22770140')['query']; -$queryParts = explode('&', $url); - $params = array(); - foreach ($queryParts as $param) { - $item = explode('=', $param); - $params[$item[0]] = $item[1]; - } -print_r($params); diff --git a/.history/test_20230101214411.php b/.history/test_20230101214411.php deleted file mode 100644 index 81452bd..0000000 --- a/.history/test_20230101214411.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -. - -head()); diff --git a/.history/test_20230101214514.php b/.history/test_20230101214514.php deleted file mode 100644 index 411b286..0000000 --- a/.history/test_20230101214514.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -headers()); diff --git a/.history/test_20230101214950.php b/.history/test_20230101214950.php deleted file mode 100644 index c0b58ac..0000000 --- a/.history/test_20230101214950.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -body()); diff --git a/.history/test_20230101215608.php b/.history/test_20230101215608.php deleted file mode 100644 index c0b58ac..0000000 --- a/.history/test_20230101215608.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -body()); diff --git a/.history/test_20230101222541.php b/.history/test_20230101222541.php deleted file mode 100644 index fc510a8..0000000 --- a/.history/test_20230101222541.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -headers()); diff --git a/.history/test_20230101222547.php b/.history/test_20230101222547.php deleted file mode 100644 index 6bf48b8..0000000 --- a/.history/test_20230101222547.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -headers()); diff --git a/.history/test_20230101222559.php b/.history/test_20230101222559.php deleted file mode 100644 index 61b6e8a..0000000 --- a/.history/test_20230101222559.php +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (C) 2023 enoch@Laysense.com -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public License as -// published by the Free Software Foundation, either version 3 of the -// License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public License -// along with this program. If not, see . - -header('Content-Type')[0]); diff --git a/.history/test_20230101222611.php b/.history/test_20230101222611.php deleted file mode 100644 index bbceb46..0000000 --- a/.history/test_20230101222611.php +++ /dev/null @@ -1,10 +0,0 @@ - -header('Content-Type')[0]); diff --git a/.history/test_20230101222616.php b/.history/test_20230101222616.php deleted file mode 100644 index bf87196..0000000 --- a/.history/test_20230101222616.php +++ /dev/null @@ -1,10 +0,0 @@ - -header('Content-Type')); diff --git a/.history/test_20230101232715.php b/.history/test_20230101232715.php deleted file mode 100644 index 7635a0c..0000000 --- a/.history/test_20230101232715.php +++ /dev/null @@ -1,13 +0,0 @@ - -get($kf.$path)); \ No newline at end of file diff --git a/.history/test_20230101232744.php b/.history/test_20230101232744.php deleted file mode 100644 index 946b98a..0000000 --- a/.history/test_20230101232744.php +++ /dev/null @@ -1,17 +0,0 @@ - -get($kf.$path)); -$re=$redis->get($kf.$path) -if(!$re){ - echo(233); -} \ No newline at end of file diff --git a/.history/test_20230101232746.php b/.history/test_20230101232746.php deleted file mode 100644 index 6db8f9d..0000000 --- a/.history/test_20230101232746.php +++ /dev/null @@ -1,17 +0,0 @@ - -get($kf.$path)); -$re=$redis->get($kf.$path); -if(!$re){ - echo(233); -} \ No newline at end of file diff --git a/.history/test_20230101232911.php b/.history/test_20230101232911.php deleted file mode 100644 index 1ecf74b..0000000 --- a/.history/test_20230101232911.php +++ /dev/null @@ -1,17 +0,0 @@ - -get($kf.$path)); -$re=$redis->get($kf.$path); -if($re){ - echo(233); -} \ No newline at end of file diff --git a/.history/test_20230101232916.php b/.history/test_20230101232916.php deleted file mode 100644 index 3533500..0000000 --- a/.history/test_20230101232916.php +++ /dev/null @@ -1,17 +0,0 @@ - -get($kf.$path)); -$re=$redis->get($kf.$path); -if($re){ - echo(233); -} \ No newline at end of file diff --git a/.history/test_20230101233452.php b/.history/test_20230101233452.php deleted file mode 100644 index d62f2c4..0000000 --- a/.history/test_20230101233452.php +++ /dev/null @@ -1,15 +0,0 @@ - -'2','3'=>'4'); -$redis->hset($rpath,'CT',$ct); \ No newline at end of file diff --git a/.history/test_20230101233521.php b/.history/test_20230101233521.php deleted file mode 100644 index 77c2fa9..0000000 --- a/.history/test_20230101233521.php +++ /dev/null @@ -1,16 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); \ No newline at end of file diff --git a/.history/test_20230102113630.php b/.history/test_20230102113630.php deleted file mode 100644 index ea5c447..0000000 --- a/.history/test_20230102113630.php +++ /dev/null @@ -1,23 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$key = 'test_key'; - Cache::set($key, rand()); - return response(Cache::get($key)); \ No newline at end of file diff --git a/.history/test_20230102113637.php b/.history/test_20230102113637.php deleted file mode 100644 index 8270e20..0000000 --- a/.history/test_20230102113637.php +++ /dev/null @@ -1,22 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$key = 'test_key'; - Cache::set($key, rand()); diff --git a/.history/test_20230102114305.php b/.history/test_20230102114305.php deleted file mode 100644 index eb6e19b..0000000 --- a/.history/test_20230102114305.php +++ /dev/null @@ -1,21 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -print_r(parse_url('http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/resources/build/global.css?0.495')); \ No newline at end of file diff --git a/.history/test_20230102125853.php b/.history/test_20230102125853.php deleted file mode 100644 index 7eb6ae7..0000000 --- a/.history/test_20230102125853.php +++ /dev/null @@ -1,26 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); -echo("\n"); -print_r($return->body()); -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102125938.php b/.history/test_20230102125938.php deleted file mode 100644 index d6819a2..0000000 --- a/.history/test_20230102125938.php +++ /dev/null @@ -1,27 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/11773748/f72be8'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); -echo("\n"); -print_r($return->body()); -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102164516.php b/.history/test_20230102164516.php deleted file mode 100644 index 12813a8..0000000 --- a/.history/test_20230102164516.php +++ /dev/null @@ -1,27 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/11773748/f72be8ujiahuiohwuou'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); -echo("\n"); -print_r($return->body()); -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102164746.php b/.history/test_20230102164746.php deleted file mode 100644 index fd0afe1..0000000 --- a/.history/test_20230102164746.php +++ /dev/null @@ -1,27 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); -echo("\n"); -print_r($return->body()); -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102165125.php b/.history/test_20230102165125.php deleted file mode 100644 index 02db952..0000000 --- a/.history/test_20230102165125.php +++ /dev/null @@ -1,35 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=20){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102165145.php b/.history/test_20230102165145.php deleted file mode 100644 index f88e9c4..0000000 --- a/.history/test_20230102165145.php +++ /dev/null @@ -1,35 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=40){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102170441.php b/.history/test_20230102170441.php deleted file mode 100644 index bc1e2c1..0000000 --- a/.history/test_20230102170441.php +++ /dev/null @@ -1,35 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); \ No newline at end of file diff --git a/.history/test_20230102171751.php b/.history/test_20230102171751.php deleted file mode 100644 index 69ff94d..0000000 --- a/.history/test_20230102171751.php +++ /dev/null @@ -1,38 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -mkdir(base_path().'/books/'.date("Y/m/"),0777,true); \ No newline at end of file diff --git a/.history/test_20230102172135.php b/.history/test_20230102172135.php deleted file mode 100644 index aa10de9..0000000 --- a/.history/test_20230102172135.php +++ /dev/null @@ -1,41 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$name=base64_encode('/asss/sssc'); -$filepath=base_path().'/books/'.date("Y/m/").$name.'bin'; -$file = fopen("$filepath","w"); -fclose($file); diff --git a/.history/test_20230102172331.php b/.history/test_20230102172331.php deleted file mode 100644 index 4e53a44..0000000 --- a/.history/test_20230102172331.php +++ /dev/null @@ -1,44 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$name=base64_encode('/asss/sssc'); -if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); -} -$filepath=base_path().'/books/'.date("Y/m/").$name.'bin'; -$file = fopen("$filepath","w"); -fclose($file); diff --git a/.history/test_20230102172344.php b/.history/test_20230102172344.php deleted file mode 100644 index f3ae08e..0000000 --- a/.history/test_20230102172344.php +++ /dev/null @@ -1,44 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$name=base64_encode('/asss/sssc'); -if(!is_dir(base_path().'/books/'.date("Y/m/"))){ - mkdir(base_path().'/books/'.date("Y/m/"),0777,true); -} -$filepath=base_path().'/books/'.date("Y/m/").$name.'.bin'; -$file = fopen("$filepath","w"); -fclose($file); diff --git a/.history/test_20230102173936.php b/.history/test_20230102173936.php deleted file mode 100644 index e2a12ce..0000000 --- a/.history/test_20230102173936.php +++ /dev/null @@ -1,40 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$af='attachment; filename="How to:如何不切实际地解决实际问题(What if作者新作!比尔·盖茨推荐他每一本书!百万级畅销书作者、全球科普网红兰道尔·门罗超大脑洞来袭!)... (z-lib.org).epub";filename*=utf-8''How%20to%EF%BC%9A%E5%A6%82%E4%BD%95%E4%B8%8D%E5%88%87%E5%AE%9E%E9%99%85%E5%9C%B0%E8%A7%A3%E5%86%B3%E5%AE%9E%E9%99%85%E9%97%AE%E9%A2%98%EF%BC%88What%20if%E4%BD%9C%E8%80%85%E6%96%B0%E4%BD%9C%EF%BC%81%E6%AF%94%E5%B0%94%C2%B7%E7%9B%96%E8%8C%A8%E6%8E%A8%E8%8D%90%E4%BB%96%E6%AF%8F%E4%B8%80%E6%9C%AC%E4%B9%A6%EF%BC%81%E7%99%BE%E4%B8%87%E7%BA%A7%E7%95%85%E9%94%80%E4%B9%A6%E4%BD%9C%E8%80%85%E3%80%81%E5%85%A8%E7%90%83%E7%A7%91%E6%99%AE%E7%BD%91%E7%BA%A2%E5%85%B0%E9%81%93%E5%B0%94%C2%B7%E9%97%A8%E7%BD%97%E8%B6%85%E5%A4%A7%E8%84%91%E6%B4%9E%E6%9D%A5%E8%A2%AD%EF%BC%81%EF%BC%89...%20%28z-lib.org%29.epub'; -$filerealname=explode(";",$af); -print_r($filerealname) \ No newline at end of file diff --git a/.history/test_20230102174024.php b/.history/test_20230102174024.php deleted file mode 100644 index 17c84c4..0000000 --- a/.history/test_20230102174024.php +++ /dev/null @@ -1,43 +0,0 @@ - -'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$af=<<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ -$af=<<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<'2','3'=>'4'); -$ct=json_encode($ct); -$redis->hset($rpath,'CT',$ct); - -**/ -/** -$auth=array('remix_userid'=>"22770140",'remix_userkey'=>"1e8f326d20604ada541b4f3a67d19946",'siteLanguageV2'=>'zh','selectedSiteMode'=>'books'); -$url='http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/dl/7228066/aa9a95'; -$return=Http::withProxy('socks5h://10.1.5.2:19100')->withCookies($auth,'bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion')->head($url); - -$size=round(($return->header('Content-Length')/1048576),2); -if($size>=30){ - echo "Too Large"; -} -if($return->header('Content-Type')=='text/html; charset=UTF-8'){ - echo "Error 404"; -} - - -echo("\n"); -print_r($return->headers()); -**/ - -$af= <<