web.php 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. use App\Channels\WeChatChannel;
  3. use App\Http\Controllers\AuthController;
  4. use App\Http\Controllers\MessageController;
  5. use App\Http\Controllers\OAuthController;
  6. use App\Http\Controllers\PaymentController;
  7. use App\Http\Controllers\TelegramController;
  8. use App\Http\Controllers\User\SubscribeController;
  9. if (config('app.key') && config('settings')) {
  10. Route::domain(sysConfig('subscribe_domain') ?: sysConfig('website_url'))->get('s/{code}', [SubscribeController::class, 'getSubscribeByCode'])->name('sub'); // 节点订阅地址
  11. Route::domain(sysConfig('website_callback_url') ?: sysConfig('website_url'))->match(['get', 'post'], 'callback/notify', [PaymentController::class, 'notify'])->name('payment.notify'); //支付回调
  12. }
  13. Route::post('api/telegram/webhook', [TelegramController::class, 'webhook'])->middleware('telegram'); // Telegram fallback
  14. Route::get('api/wechat/verify', [WeChatChannel::class, 'verify'])->name('wechat.verify'); // 微信回调验证
  15. Route::get('/message/{type}/{msg_id}/show', [MessageController::class, 'index'])->name('message.show'); // 微信回调验证
  16. Route::middleware(['isForbidden', 'affiliate', 'isMaintenance'])->group(function () { // 登录相关
  17. Route::prefix('oauth')->name('oauth.')->controller(OAuthController::class)->group(function () { // 用户第三方登录默认登录/转跳方式
  18. Route::get('{provider}/redirect/{operation}', 'redirect')->whereIn('operation', ['bind', 'register', 'login'])->name('route'); // 转跳
  19. Route::get('{provider}/unbind', 'unbind')->name('unbind'); // 解绑
  20. Route::get('{provider}/login', 'login')->name('login'); // 登录 callback
  21. Route::get('{provider}/register', 'register')->name('register'); // 注册 callback
  22. Route::get('{provider}/bind', 'bind')->name('bind'); // 绑定 callback
  23. });
  24. Route::controller(AuthController::class)->group(function () {
  25. Route::get('lang/{locale}', 'switchLang')->name('lang')->withoutMiddleware('isMaintenance'); // 语言切换
  26. Route::get('login', 'showLoginForm')->middleware('isSecurity')->name('login'); // 登录页面
  27. Route::post('login', 'login')->middleware('isSecurity'); // 登录
  28. Route::get('logout', 'logout')->name('logout'); // 退出
  29. Route::get('register', 'showRegistrationForm')->name('register'); // 注册
  30. Route::post('register', 'register'); // 注册
  31. Route::match(['get', 'post'], 'reset', 'resetPassword')->name('resetPasswd'); // 重设密码
  32. Route::match(['get', 'post'], 'reset/{token}', 'reset')->name('resettingPasswd'); // 重设密码
  33. Route::match(['get', 'post'], 'activeUser', 'activeUser')->name('active'); // 激活账号
  34. Route::get('active/{token}', 'active')->name('activeAccount'); // 激活账号
  35. Route::post('send', 'sendCode')->name('sendVerificationCode'); // 发送注册验证码
  36. Route::get('free', 'free')->name('freeInvitationCode'); // 免费邀请码
  37. });
  38. });
  39. Route::get('admin/login', [AuthController::class, 'showLoginForm'])->name('admin.login')->middleware('isForbidden', 'isSecurity'); // 管理登录页面
  40. Route::post('admin/login', [AuthController::class, 'login'])->middleware('isSecurity')->name('admin.login.post'); // 管理登录