Web API の普及に伴い、API のセキュリティの重要性がますます高まっています。 Laravel では、組み込みの検証ルールとミドルウェアを使用して API リクエストを検証し、保護できます。
- Laravel の組み込み検証ルールを使用する
Laravel には、「required」 (必須)、「email」 (電子メール形式) などの一連の検証ルールが用意されています。 。これらのルールを API インターフェイスに適用して、インターフェイス パラメーターの正確性を保証できます。
たとえば、登録された API インターフェイスのパラメーターを確認したい場合は、次のコードを使用できます:
public function register(Request $request) { $validatedData = $request->validate([ 'name' => 'required|string|max:255', 'email' => 'required|string|email|max:255|unique:users', 'password' => 'required|string|min:8', ]); // 对请求参数进行处理 // ... // 注册用户 // ... }
上記のコードでは、$request->validate を使用します。 () メソッドでリクエストパラメータを検証します。検証が失敗した場合、Laravel は自動的に ValidationException をスローするため、この例外を例外ハンドラーで処理する必要があります。
- Laravel の組み込みミドルウェアを使用する
Laravel は、API のセキュリティを強化するためのミドルウェアも多数提供しています。一般的に使用されるミドルウェアの一部を次に示します:
- auth: ユーザー認証に使用され、ログインしているユーザーのみがインターフェイスにアクセスできるようにします;
- throttle: リクエストの頻度を制限するために使用されます。攻撃や悪用を避けるための API インターフェイス;
- cors: クロスドメイン リソース共有に使用され、クロスドメイン リクエストを許可します;
- csrf: クロスサイト リクエスト フォージェリ攻撃を防ぐために使用されます。
以下に示すように、これらのミドルウェアをルート定義で直接使用できます。
// 定义需要认证的API接口 Route::middleware(['auth'])->group(function () { Route::post('/api/foo', 'FooController@create'); Route::put('/api/foo/{id}', 'FooController@update'); }); // 定义允许跨域访问的API接口 Route::middleware(['cors'])->group(function () { Route::get('/api/bar', 'BarController@index'); }); // 定义限制请求频率的API接口 Route::middleware(['throttle'])->group(function () { Route::get('/api/baz', 'BazController@index'); });
- カスタム ミドルウェア
Laravel の使用に加えて、組み込みミドルウェア。ミドルウェアをカスタマイズして、より複雑な検証ロジックを実装することもできます。
たとえば、API リクエストにトークン パラメーターが含まれていて、そのトークンが有効であることを確認したい場合は、この関数を実装するカスタム ミドルウェアを作成できます。
php artisan make:middleware ValidateToken
public function handle($request, Closure $next) { $token = $request->input('token'); if (! $token || ! Token::isValid($token)) { return response()->json([ 'status' => 'error', 'message' => 'Invalid token provided', ], 401); } return $next($request); }
上記ではコードでは、まずリクエスト内の「トークン」パラメータを取得し、トークンが有効かどうかを確認します。無効な場合は、401 ステータス コードとエラー メッセージが返されます。それ以外の場合は、リクエストの処理を続行します。
最後に、ルート定義でこのカスタム ミドルウェアを使用できます:
Route::middleware(['validate_token'])->group(function () { Route::post('/api/qux', 'QuxController@create'); });
概要
Laravel では、組み込みの検証ルール、ミドルウェア、およびカスタマイズ ミドルウェアを使用できます。 API リクエストを検証し、API のセキュリティを強化します。同時に、特定のビジネス ニーズに基づいて、より複雑な検証ロジックを実装して、API インターフェイスを悪用や攻撃から保護することもできます。
以上がLaravelでAPIを書く際の検証方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

WOCUSANDMOTIVERIANCIANGINTIANIVERMOTEWORK、CREATERUCTUREDENVIRONMENT、MANAGEDIGITALDISTRACTIONS、FOSTERMOTIVERIVESTROUGHSOCIAL-INTERACTIONSIONDANDGOALSETTINTING、MANTEMESTECHNOLOGY.1)SetUpAdedicatedWorkStickEndStickToTtoTtoTtoTtoTototine。

tofostercollaboration and trustinRemoteteams、exprenttheStrategies:1)定期的で構造化された構造化された通信を確立します。

Laravelの主な機能の最新バージョンには、1。Laraveloctaneのアプリケーションパフォーマンスの向上、2。モデルファクトリーサポート関係と状態定義の改善、3。強化された職人コマンド、4。これらの機能は、開発効率とアプリケーションのパフォーマンスを大幅に改善しますが、潜在的な問題を回避するために注意して使用する必要があります。

トコンバティソルメントアンドロネリネスは、レモであり、regultionを実現し、等間grothopportunitionを提供し、効率的に使用します

laravelispopopularfulfull-stackdevelopment becuseiTOfferseamlessbbackEndpowendPowerandfflexibility.1)simplifyDatabaseItteractions.2)asbladetemplatingEngineallowsforclean、dynamictmltemplates.3)Laravelmix

ビデオ会議プラットフォームを選択する際の重要な要因には、ユーザーインターフェイス、セキュリティ、および機能が含まれます。 1)ズームなど、ユーザーインターフェイスは直感的である必要があります。 2)セキュリティに注意を払う必要があり、Microsoftチームはエンドツーエンドの暗号化を提供します。 3)機能は要件を一致させる必要があり、Googlemeetは短い会議に適しており、Ciscowebexは高度なコラボレーションツールを提供します。

Laravel10の最新バージョンは、MySQL 5.7以降、PostgreSQL 9.6以降、SQLite 3.8.8以降、SQLServer 2017以降と互換性があります。これらのバージョンは、クエリとストレージの効率を向上させるMySQL5.7のJSONデータ型など、LaravelのORM機能をサポートするため選択されます。

laravelisanexcellentchoicefulfulffull stackdevelopmentduetoitsotsobustfeaturesofuse.1)そのImprifiescomplextaskswithnphpsynthenphpsynpsuls likebladeforfront-dandeloquentormforback-end.2)laravelmixandartisantystemを拡張するlaravedecosystem


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ホットトピック









