2011-01-18 20 views
1

クライアントをテストできるWebサービススタブを作りたいと思います。私はについて話をする何のPHPの経験を持っていないJSONスタブ文字列(PHP経由)

{ 
    "response": { 
     "success": true, 
     "meta" : "tags", 
     "data": [ 
      { 
       "first_name" : "John", 
       "last_name" : "Doe", 
       "age" : 30 
      }, 
      { 
       "first_name" : "Jane", 
       "last_name" : "Doe", 
       "age" : 25 
      } 
     ] 
    } 
} 

:私はこのような いくつかのJSONを下に書かれています。 はどうすれば

webserver.com/ get_names.php?FIRST_NAME =ジョン& LAST_NAME = DOE &歳以上のJSONを返す= 30

スクリプトを作ることができます。

パラメータに対して評価を行うべきではありません。つまり、サーバーに対して実装されたときに呼び出される方法です.JSONの文字列を正しく返して、JSONパーサーとして実行できるようにしたいと思います。それが実際のサーバレスポンスだった場合

誰かが私を助けてくれることを願っております、ありがとうございます。

答えて

1

そのままJSON文字列を保存し、ファイルget_names.phpを呼び出します。エディタのUTF-8を選択してとして保存することを忘れないでください。単一の<?php文字列がファイルにない場合、PHPとして解析されるものはありません。

はまた、ファイルの上にこれを配置することがあります。

<?php 
header('Content-Type: application/json'); 
?> 
+0

こんにちはÁlvaroとありがとう。私はあなたが正しい答えを与えていると思います - あなたが書いたPHPの下にある私のJSONに "貼り付け"、それを私のサーバーにアップロードして呼び出し、戻り値はJSON文字列ですか? – RickiG

+0

」以外のものはそのまま出力されることを覚えておいてください。 HTMLである必要はありません。 –

0

Webサーバーにget_names.phpとして保存できます。

<?php 

$my_associative_array = array(
    'response' => array(
     'success' => true, 
     'meta' => 'tags', 
     'data' => array(
      array(
       'first_name' => 'John', 
       'last-name' => 'Doe', 
       'age' => 30, 
      ), 
      array(
       'first_name' => 'Jane', 
       'last_name' => 'Doe', 
       'age' => 25 
      ), 
     ), 
    ), 
); 

echo json_encode($my_associative_array); 

また、JSONと正確に同じように見える.txtファイルを作成することもできます。

また、単に上記のスクリプトが正常に動作している私のサーバー、それを指し示すことができます:http://dorkitude.com/example_4725873.php

+0

感謝:)「であるとして、」私はJSONを使用したいと思います。パーサ/ Webプロキシクラスをテストするだけです。 – RickiG

1

これは通常、APIと呼ばれ、多くのレベルで開発することができます。

最初のレベルは、一般的なphpコーディングの後に続くコードを持つ標準の流線型のphpです。

$Action = isset($_GET["action"]) ? $_GET["action"] : false; 

switch($Action) 
{ 
    case 'get_names': 
     //fetch data and display. 
    break; 
} 

次の方法と最も単純なMVCアプリケーションフレームワークを使用することですが、私はAPIのSOAPサーバーに似ているTIS bigginner友好とURIの構造として、このためにCodeIgniterのをお勧めします。

あなた/api/パスにあなたのCIファイルをコピーした後、あなたはガイドを投げて行くと、データベース、ライブラリ、ヘルパーなどを設定するでしょう、あなたはまた、そのような/api/get/games/API_KEY

としてURLを取得するためにURI条約をセットアップするのmod_rewriteを使用します

あなたのクラスはそうのようになりますのparamsの検証と

class Get extends Controller 
{ 
    public function __construct() 
    { 
     parent::Controller(); 
    } 

    public function games($Api = false,$limit = 10, $offset = 0) 
    { 
     if(!$Api) 
     { 
      show_error("API Key require to fetch games"); 
     } 
     if(your_api_check($api) === true) 
     { 
      //Load the games 
      $games = $this->models->games->get($limit,$offset); 
      $this->output->send(json_encode($games)); 
     } 
    } 
} 

明らかに、より広範なチェックが、あなたはそれの要点を取得します。

次のレベルはあなた自身のために非常に複雑ですが、あなたがその考えを納得させたい場合は、Simple Object Access Protocolを見てみたいと思っています。

リンク:

+0

Robertさん、APIをやっている人がいます。クライアントからJSONを正しく処理するためにクライアントを正しくテストしたいと思います。しかし、私は本当に自分のAPIをロールバックする方法を学びたいので、 "スターターキット"に感謝します:) – RickiG

関連する問題