3

我有一个简单的函数,它向我的 RESTful API 发出 cURL 请求,并在发出成功请求时返回数据。我的问题是,当用户可能向 API 提供错误数据或 API 无法执行请求时,我不知道如何返回错误响应(例如 404s、500s)。

我该怎么做呢?

目前我有以下内容。在我的 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 回答