2011-07-07 18 views
3

私はPHPの初心者ですが、私はほとんどの基本を知っています。私は現在自分のウェブサイト用のAPIを持っています。自分自身でコード化されています。さまざまなパラメータを使ってさまざまなメソッドを呼び出すことができ、データベースから関連情報を探します。PHP APIからのREST APIの作成

しかし、私はそれをRESTに変換したいと思います。

このような要求の代わりにhttp://mywebsite.com/api/?param=allPostsには、のようなものがあります。私は私の23の異なるパラメータごとにこれを行うでしょう。

どうすればいいですか?

答えて

2

ルーティングのためにマイクロフレームワークを使用する方法もあります。これは、関連するPHPファイル(コントローラ)へのリクエストパターンを指し示し、それらのリクエストを管理し、コンテンツを提供する(CRUD操作を実行する、あるいはAPIが行うことを実行する)。

ここにはいくつかのディスカッションやリンクがあります。私は現在、この正確な目的のために

http://silex-project.org/

をフレームワークサイレックスを使用するプロセスではそれはあなたがのいずれかを使用するPHPアプリケーションを変換したいのかもしれてる

https://stackoverflow.com/questions/115629/simplest-php-routing-framework

多くのフレームワークがあります(他のものの中でルーティングを処理します)。

いつもの容疑者は、CakePHP

  • CodeIgniterの
  • symfonyの
  • リチウム

    • ある

    とがある。これは、厳密に言えばされていない

  • +0

    +1シレックスを投稿しようとしていました:) – Kevin

    +0

    +1シレックスでも、良い個人的なフィードバック – Ronan

    0

    1つの方法は、第2のタイプの要求を最初に効率的に変換するために、Apacheのmod_rewriteを使用することです。それは必ずしも理想的ではありませんが、あなたの問題に対する非常に単純な解決策です。

    1

    ...もっと多くのRESTfulそれは単にあなたのURLのprettifyingです。要求

  • の開始のあなたのベースURLが「/」コンポーネント
  • で、残りの文字列を爆発トリム

    1. :あなたのURLのあなたは、このようなものを実装することができ、「飾り立てる」を

      最初のコンポーネント(通常)はコントローラに関連付けられています

    2. 次のコンポーネントは、この場合の使用方法と同等の動作です?param=allPosts

    RESTfulルーティングは、さまざまなHTTP動詞(GET/POST/PUT/DELETE)を使用してサーバー上のリソースに対して実行するアクションを決定するという考え方に基づいています。 Wikipediaには概要があります。

  • 関連する問題