3

RESTful API に対して cURL 要求を行う単純な関数があり、要求が成功したときにデータを返す必要があります。私の問題は、ユーザーが API に間違ったデータを提供したり、API が要求された処理を実行できない場合に、エラー応答 (404、500 など) を返す方法がわからないことです。

どうすればこれを行うことができますか?

現時点では、私は以下を持っています。私のAPIクライアントで

class Awesome_Api { 
    static function request($url, $data, $method)
    {
        // cURL stuffs here...

        if (successful)
        {
            return (success response)
        }
        else
        {
            return (error response)
        }
    }
}

$response = Awesome_Api::request($url, $data, $method);

API からエラー応答コードを返し、それをクライアント エンドで処理するにはどうすればよいでしょうか。

4

1 に答える 1

3

この関数を使用して、次のheaderようにエラー コードを返します。

header('HTTP/1.1 500 Internal Server Error');

また

header('HTTP/1.1 404 Not found');

この関数を呼び出す前に、出力に何も書き込まれていないことを確認することが非常に重要です。そうしないと、期待どおりに動作しません。

クライアント API では、関数curl_error()curl_errno()関数を使用して、サーバーから返されたエラー番号とメッセージに関する情報を取得できます。

于 2013-01-24T03:55:27.543 に答える