PHPで実装されたシンプルなモックJSONスクリプト、phpmockjsonスクリプトの共有
現時点ではモックする方法が多すぎますが、実際の戻り値をテストするためにリモートサーバーに接続する必要がある場合、ノードがマシン上で実行されておらず、php がある場合は、この製品を使用して一時的に実行する方が簡単かもしれません嘲笑する。
コードをコピーします コードは次のとおりです:
/**
* Javascript 用のモック Json
*
* @作者soulteary
* @日付 2014-06-15
*/
/**
* リクエストインターフェースフィールド: 文字セット
*/
定義('文字セット','文字セット');
/**
* リクエストインターフェイスフィールド: コールバック関数名
*/
定義('コールバック','コールバック');
/**
* リクエストインターフェースフィールド: クロスドメインフィールド
*/
定義('クロスドメイン','クロスドメイン');
/**
* モックデータを出力します
※mock.jsonファイルが存在する場合はmock.jsからデータを取得します
*
* @戻り文字列
*/
functionmockData()
{
If(file_exists('mock.json')){
$data=json_decode(file_get_contents('mock.json'));
}その他{
$data=Array(
'コード'=>200,
'desc'=>'デフォルトのデータを取得します。',
'ログイン'=>true,
'data'=>Array(
'名前'=>'テスト API。'
)
);
}
Returnjson_encode($data);
}
/**
* 出力文字セット、許可される結果は gbk、gb2312、utf-8 です
※不正な場合や設定されていない場合はutf-8を出力
*
* @戻り文字列
*/
functioncharset()
{
$ret='utf-8';
If(empty($_REQUEST[charset])){
return$ret;
}その他{
$charset=strto lower($_REQUEST[charset]);
If(in_array($charset,array('gbk','gb2312'),true)){
return$charset;
}その他{
return$ret;
}
}
}
/**
* jsonデータを組み立てます
*
* @戻り文字列
*/
functionjsonGenerator()
{
If(!empty($_REQUEST[コールバック])){
header('Content-Type: application/javascript; charset='.charset());
return$_REQUEST[コールバック]."(".mockData().");";
}その他{
If(!empty($_REQUEST[クロスドメイン])){
header("Access-Control-Allow-Origin: *");
};
header('Content-type: application/json; charset='.charset());
returnmockData();
}
}
/**
*出力結果
*/
die(jsonGenerator());
PHP でデータ オブジェクトを変更したくない場合は、JSON を直接変更すれば良いのではないかと疑問に思うかもしれません。 答え:
1. この結果をラップするにはコールバックが必要になる場合があります。
2. この JSON ではクロスドメイン リクエストが許可されると思われるかもしれません
3. この JSON はヘッダー エンコーディングでカスタマイズできると予想されるかもしれません...
コードをコピーします コードは次のとおりです:
{
「データ」:1,
"w":"テスト"
}
コードは非常に単純なので、あまり説明しません。
http://www.bkjia.com/PHPjc/955975.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/955975.html技術記事 PHP で実装された単純なモック JSON スクリプトを共有する phpmockjson スクリプトをモックする方法はたくさんありますが、実際の戻り値をテストするためにリモート サーバーに接続する必要がある場合は、マシン...