JSON Web Token(JWT)は、ネットワーク上の情報を送信するために使用されるオープン標準(RFC 7519)です。 JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。ヘッダーには、トークンタイプと署名アルゴリズムが含まれています。ペイロードは、送信されるデータを保存し、署名はトークンの信頼性を検証するために使用されます。
ThinkPhp6でJWTを使用するには、Composer.jsonファイルにThink-JWTコンポーネントを導入して、まず実装する必要があります。 「think-jwt」: "1.0。*"をファイルの要求ノードに追加し、Composer Updateコマンドを実行してコンポーネントをインストールします。
ThinkPhp6では、JWTクラスを通じてJWTを生成できます。まず、JWT関連の構成アイテムを含むJWT.PHP構成ファイルを作成する必要があります。
戻る [ //署名前キー「secret」=> 'my_secret'、 //有効期限、ユニットは2番、デフォルトは1時間「タームカットれ」=> 3600、 ];
次に、コントローラーにJWTクラスを導入し、Createメソッドを使用してJWTを生成します。
Think \ jwt \ jwtを使用してください。 class usercontroller拡張コントローラー{ public function login(){ //ユーザー名前とパスワードを確認します... // jwtを生成するします $ payload = [ 'user_id' => $ user-> id ]; $ jwt = jwt :: create($ payload); return ['token' => $ jwt]; } }
上記のコードでは、最初にユーザー名とパスワードを確認し、確認後、JWTを生成してクライアントに返します。
ThinkPhp6では、JWTクラスの検証方法を通じてJWTの有効性を検証できます。
Think \ jwt \ jwtを使用してください。 class usercontroller拡張コントローラー{ パブリック関数プロファイル(){ // jwtを確認します $ jwt = input( 'token'); $ payload = jwt :: verify($ jwt); return ['user_id' => $ payload ['user_id']]; } }
上記のコードでは、最初にクライアントからJWTを取得し、次に検証のために検証方法を呼び出します。検証が渡された後、JWTでペイロードデータを取得できます。
この記事を通して、JWTの基本概念とThinkPhp6でそれらの使用方法を理解しています。認証にJWTを使用すると、インターフェイスのセキュリティを効果的に改善し、不正アクセスを防ぐことができます。実際の開発では、開発者はプロジェクトのセキュリティニーズを満たすためのニーズに応じてJWT構成を調整できます。