增加 请求安全处理
This commit is contained in:
parent
8b0025aa4b
commit
dc5d9bca55
@ -9,6 +9,7 @@
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
|
||||
class UserController extends Controller
|
||||
{
|
||||
@ -74,10 +75,19 @@ public function update(Request $request, User $user): JsonResponse
|
||||
$request->validate([
|
||||
'balance' => 'required|numeric|min:-10000|max:10000',
|
||||
'description' => 'required|string',
|
||||
'unique_id' => 'nullable|string',
|
||||
]);
|
||||
|
||||
$module = $request->user('module');
|
||||
|
||||
if ($request->filled('balance')) {
|
||||
if ($request->filled('unique_id')) {
|
||||
$unique_id_cache_key = 'module:'.$request->user('module')->id.':balance:unique_id:'.$request->input('unique_id');
|
||||
if (Cache::has($unique_id_cache_key)) {
|
||||
return $this->error('重复的请求。');
|
||||
}
|
||||
}
|
||||
|
||||
$balance = $request->input('balance');
|
||||
|
||||
if ($balance < 0) {
|
||||
@ -110,6 +120,12 @@ public function update(Request $request, User $user): JsonResponse
|
||||
]);
|
||||
}
|
||||
|
||||
if ($request->filled('unique_id')) {
|
||||
$unique_id_cache_key = 'module:'.$request->user('module')->id.':balance:unique_id:'.$request->input('unique_id');
|
||||
Cache::put($unique_id_cache_key, $trans->id, now()->addDay());
|
||||
}
|
||||
}
|
||||
|
||||
$trans['commission'] = config('settings.billing.commission');
|
||||
|
||||
return $this->success($trans);
|
||||
|
Loading…
Reference in New Issue
Block a user