ホームページ >バックエンド開発 >PHPチュートリアル >インターフェースの書き込みの問題
私のインターフェースは次のようになります
私の同僚は、データを受け取ると、json を使用してデータをオブジェクトに変換し、データが空の場合、彼のプログラム全体が爆発するか、私のデータが null を返し、それを返すことができないと言いました。本当にそうなのですか?
私のインターフェースは次のようになります
同僚は、データを受け取ったときに、データが json を使用してオブジェクトに変換され、データが空の場合、彼のプログラム全体が爆発するか、私のデータが返されない null を返すと言いました。本当にそうなのですか?
そうです。元のデータはオブジェクトです。配列になると、処理されずにハングアップします。$info['data'] = new stdClass();//返回空对象
フィールドの型に注意して扱う必要があると思います。
コードの値を判断する必要はないのでしょうか?
あなたの同僚は json を解析するためにフレームワークを使用しましたか? 手動で解析するように依頼してください。フレームは使用しないでください。
そうしないと、フレームワークはデータ内の [] が空のオブジェクトであると判断できません。
もちろん、解析する前にコードの値を判断することもできます。
クライアントのコードが適切に記述されていない場合、これは実際に発生します。あなたが彼より優れている場合は、ポットを投げ返してください。そうでない場合は、ポットを受け取ります。 。 。
通常、クライアントは gson に似たフレームワークを使用して、サーバーから返された json データを解析します。データ形式は事前に定義する必要があります。データはオブジェクトであるため、オブジェクトのデフォルト値である null を使用できます。これはごく普通の要件だと思います。
これは誰が簡単に変わることができるかという問題だと思います~~
私はあなたの言ったことは理にかなっていると思います、私は通常、同僚が私に与えた便宜をすべて受け取ります。あとは自分で加工してください。
もちろん、具体的な問題を詳しく分析しましょう~~
コードの価値で判断した方が良いと思います
API として、同じフィールドは同じデータ型を返す必要があります。
ただし、問題が解決する場合は、コードを使用することもできます。
したがって、開発中の場合は、インターフェースを変更してください。すでにオンラインになっている場合は、インターフェースを変更してください。
そのため、インターフェースの共同デバッグが必要です
結局のところ、各フィールドのデータ型は厳密に型指定されている必要がありますね。
アプリ側の記述が十分に厳密ではないため、最初にステータスコードコードを決定し、成功しない場合はエラーコードコードを返し、解析しません。
サーバー側には弱い型の PHP があるため、アプリ側には各データの型があり、データが空でない場合に返されるデータ型の一貫性を確保するように努めます。データが空の場合、文字列はアプリによってオブジェクトとして解析され、空の場合は空のオブジェクトを割り当てます
。リーリー
最初に PHP 側で変数を定義してみてはいかがでしょうか? ? $data=array()
さらに、クライアントは、何があってもクラッシュしないことを確認する必要があります。開発プロセス中に、クライアントへのエラー戻り値をシミュレートして、クライアントがクラッシュするかどうかを確認することをお勧めします。そして、彼に責任を負わせてください(笑)、冗談です
リーリー
直接書かないでください
リーリー