ホームページ >バックエンド開発 >PHPチュートリアル >API インターフェースの検証を行う方法を教えてください。
APIインターフェースを作りたい
APIインターフェースを作りたい
非常に簡単です。ブラウザ経由でアクセスできるクラスまたはメソッドを記述し、対応するデータを通常は json
形式で出力して返すだけです
API 検証では 2 つの状況を考慮する必要があります。1 つはクライアントからのリクエスト、もう 1 つは他のサービスからのリクエストです。
クライアントリクエストにとって最も簡単なことはクロスドメインアクセスを制御することであり、これには主にAccess-Control-Allow-Origin
の設定が必要です。
現在主流のサーバーサイド検証の考え方は、アクセスを許可するサービスにシークレットを与え、相手に一定のルールに従ってトークンを生成し、アクセス時にトークンを持参してローカルで検証することを要求します。
トークンを生成するための具体的なルールは、実際の状況に応じて設計されており、一般的にはさまざまな暗号化とエンコードが含まれます。
トークンを使用して検証するだけです。プロセスは次のとおりです
1. クライアントは、まずアカウントとパスワードを使用してログインを要求します。ログインが成功すると、ランダムな文字列が生成され、データベースに書き込まれ、クライアントに返されます。
2. クライアントはトークンを使用して、保護されたリソースをリクエストします。
3. サーバーは、トークンを使用してデータベースを検索します。有効でない場合は、401 を返します。
クライアントとサーバーはそれぞれ、署名署名を計算するために同じ公開キーと同じアルゴリズムのセットを保持しており、この署名は、サーバーがインターフェイスを実行する前にクライアントから署名を取得するたびに動的に計算され、転送されます。公開キーは端末パラメータの署名の計算にも使用され、署名は毎回比較されます。