收口聊天室安全边界并优化特效生命周期

This commit is contained in:
2026-04-25 02:52:30 +08:00
parent 4d3f4f7a4b
commit 855d031b04
26 changed files with 1219 additions and 175 deletions
+9 -3
View File
@@ -285,7 +285,9 @@ Route::middleware(['chat.auth'])->group(function () {
Route::get('/room/{id}', [ChatController::class, 'init'])->name('chat.room');
// 发送消息
Route::post('/room/{id}/send', [ChatController::class, 'send'])->name('chat.send');
Route::post('/room/{id}/send', [ChatController::class, 'send'])
->middleware('throttle:chat-send')
->name('chat.send');
// 挂机心跳存点 (限制每分钟最多调用 6 次防止挂机脚本滥用)
Route::post('/room/{id}/heartbeat', [ChatController::class, 'heartbeat'])
@@ -333,7 +335,9 @@ Route::middleware(['chat.auth'])->group(function () {
Route::post('/command/announce', [AdminCommandController::class, 'announce'])->name('command.announce');
Route::post('/command/clear-screen', [AdminCommandController::class, 'clearScreen'])->name('command.clear_screen');
Route::post('/command/refresh-all', [AdminCommandController::class, 'refreshAll'])->name('command.refresh_all');
Route::post('/command/effect', [AdminCommandController::class, 'effect'])->name('command.effect');
Route::post('/command/effect', [AdminCommandController::class, 'effect'])
->middleware('throttle:chat-effect')
->name('command.effect');
Route::post('/command/baccarat-loss-cover', [\App\Http\Controllers\Admin\BaccaratLossCoverEventController::class, 'store'])->name('command.baccarat_loss_cover.store');
Route::post('/command/baccarat-loss-cover/{event}/close', [\App\Http\Controllers\Admin\BaccaratLossCoverEventController::class, 'close'])->name('command.baccarat_loss_cover.close');
@@ -345,7 +349,9 @@ Route::middleware(['chat.auth'])->group(function () {
// ---- 商店(购买特效卡/改名卡)----
Route::get('/shop/items', [\App\Http\Controllers\ShopController::class, 'items'])->name('shop.items');
Route::post('/shop/buy', [\App\Http\Controllers\ShopController::class, 'buy'])->name('shop.buy');
Route::post('/shop/buy', [\App\Http\Controllers\ShopController::class, 'buy'])
->middleware('throttle:chat-shop-buy')
->name('shop.buy');
Route::post('/shop/rename', [\App\Http\Controllers\ShopController::class, 'rename'])->name('shop.rename');
// ---- 银行资金接口 ----