RESTful API 客户端交互


RESTful API Client Interactions

所以我正在编写一个API,我担心我正在编写的代码会很快变得混乱。

有些页面我需要从 API 的几个不同资源中获取数据,最终我到处都是一大堆 try and catch 语句。例如:

$topic_id = 100;
try
{
    $topic = AwesomeAPI::get('topics/' . $topic_id);
    $parts = AwesomeAPI::get('parts?topic_id=' . $topic_id);
    try
    {
        // Get another resource here
    }
    catch (Exception $e)
    {
        // Error
    }
}
catch (Exception $e)
{
    return Response::error('404');
}

我相信这段代码非常混乱,如果我必须循环访问一个资源并在循环中获取另一个资源,情况会变得更糟。呸。

我想知道如何以整洁的方式最好地处理客户端与 API 的交互。

正如我之前评论的那样,在我看来,您应该将所有 API 逻辑放在类中,因此应该放在方法中。因此,您可以编写如下代码,而不是像发布的那样编写代码:

$api = new AwesomeAPI();
$topic = $api->GetTopic($topic_id);

你的 AwesomeAPI 类可能看起来像这样:

public class AwesomeAPI()
{
    public $topic_url = 'somewebsite.com/topics?id{0}';
    function GetTopic($topicId)
    {
        //Some code here
        $response = 'Some response (could be a JSON Document)';
        return $response;
    }
}

这样,应用程序中的代码将更加优雅和清晰。

希望这对你有帮助