ホームページ  >  記事  >  バックエンド開発  >  PHP で RESTful インターフェイスを作成、PHP でrestful_PHP チュートリアルを作成

PHP で RESTful インターフェイスを作成、PHP でrestful_PHP チュートリアルを作成

WBOY
WBOYオリジナル
2016-07-12 08:58:45802ブラウズ

PHP は RESTful インターフェースを書き、PHP は RESTful を書きます

まず、RESTful について知りましょう

Restful は標準ではなくデザイン スタイルです。たとえば、インターフェイスは元々次のようなものでした: http://www.test.com/user/view/id/1

はID 1のユーザー情報を取得することを意味します。Restfulスタイルを使用する場合は次のようになります:

http://www.test.com/user/1

これを行うことの利点が明確にわかります:

1. プログラマに優しい、より簡潔な URL

2. 内部コード構造を公開しないため、より安全です

それでは、このインターフェースを実装するにはどうすればよいでしょうか?まず、/user/1 部分を受け取る必要があります。

リーリー

次の結果が得られます:

リーリー

パラメータを取得した後の操作は非常に簡単です:

リーリー

このようにして、Restful スタイルの API を実装しました。

次に、従来の方法であるユーザー リストを読み取るためのインターフェイスを実装する方法を見てみましょう: http://www.test.com/user/list
Restful スタイルを使用すると、より簡潔になります:

http://www.test.com/user

ユーザー情報の読み取りとの違いは、ユーザーの後に ID がないため、読み取り部分に基づいていくつかの変更を加えることができることです。 リーリー

これはユーザーリストを読み取るためのインターフェースを実装します。

従来の方法でユーザーを追加するためのインターフェイスを実装する方法を見てみましょう:

http://www.test.com/user/add


安らぎのスタイル:

http://www.test.com/user

ユーザーリストを読み込むインターフェースと同じです。見分け方は?実際、読み取りは GET リクエストであり、追加は POST リクエストであるため、コードに次の変更を加えることができます。 リーリー
同じインターフェースでも、HTTP リクエストメソッドに応じて異なるロジックを実行できます。

これは、Restful スタイル API を実装するための中心的なアイデアです。同様に、編集ユーザー インターフェイスと削除ユーザー インターフェイスを実装できます。

http://www.test.com/user/1
異なるリクエストメソッドが使用されている限り、それらを区別できます。 PUT リクエストを使用して編集操作を実行し、DELETE リクエストを使用して削除操作を実行できます。

具体的なコードは書きません。興味のある方はご自身で以下の実装を試してみてください。

Thinkphp フレームワークも Restful スタイルのサポートを提供しており、原理は同様です。

要約すると、Restful スタイルは単純な URL と HTTP リクエストを使用してインターフェイスを実装します。

PHPRS

github

これは、RESTful インターフェイスの迅速な開発のために設計された軽量フレームワークです。あなたも私と同じで、従来の MVC フレームワークを使用してフロントエンドとバックエンドを分けてマイクロサービスや API インターフェイスを作成することに飽きていて、冗長なコーディング (および CTRL-C/CTRL-V) に耐えられない方は、シンプルなインターフェースなので、このフレームはきっと気に入っていただけるでしょう。

まずは栗をあげましょう

HelloWorld.phpを作成し、フレームワークで指定されたディレクトリに配置します(デフォルトはindex.phpと同じレベルのapis/ディレクトリです)

リーリー

ブラウザに http://your-domain/hw/
と入力します

以下が表示されます: Hello World! これは非常にシンプルで、追加の構成や継承や組み合わせは必要ありません。


何が起こったのか

HelloWorld.php を振り返ると、特別なのはアノテーション (@path、@route) です。はい、フレームワークはルーティング情報を取得し、アノテーションを通じて入力と出力をバインドします。ただし、パフォーマンスについては心配する必要はありません。アノテーションはクラス ファイルの変更後に 1 回だけ解析されます。 @ コメントについては後ほど説明します。

より具体的な例を見てみましょう

これはログインインターフェースの例です
リーリー

他に何ができるでしょうか


依存関係管理 (依存関係注入)、

    インターフェイスドキュメントを自動的に出力します(doxgenスタイルのクラスおよびメソッドドキュメントではなく、httpインターフェイスを説明するドキュメント)
  1. インターフェースキャッシュ
  2. フック

  3. ezsqlと連携してデータベースにアクセスします

ezsql は、シンプルな基本 SQL 操作を提供するシンプルなオブジェクト指向 SQL 構築ツールです。


インターフェース

リーリー プロフィール リーリー

興味があるかもしれない記事:

Restfulリクエストを処理するためのPHPのルーティングクラスの共有

    PHPはRestful APIの戻りコンテンツタイプの自動識別を実装します
  • phpはcurl拡張機能に基づいてクロスプラットフォームのRestfulインターフェースを作成します
  • PHP は RESTful インターフェイス メソッドを作成します
http://www.bkjia.com/PHPjc/1102463.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/1102463.html技術記事 PHP は RESTful インターフェイスを作成し、PHP は RESTful なインターフェイスを作成します。まず、RESTful は標準ではなく設計スタイルであることを理解しましょう。たとえば、インターフェイスは元々次のようなものでした。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。