php - API 和 RESTful 的差別?
迷茫
迷茫 2017-05-16 13:06:05
0
4
631
class UserController extends Controller
{
    private $state_fail = 0;
    private $state_success = 1;
    private $img_url = 'http://xxx.cn/';

    public function __construct()
    {
        parent::__construct();
        $this->appUrl = "http://xxx.cn/" . I("server.HTTP_HOST");
        header('Content-Type: application/json; charset=utf-8');
        $code = I('code');
        if (!$code) {
            $code = I('get.code');
        }
        switch ($code) {
            case 1001:
                $this->register(); 
                break;
            case 1002:
                $this->Login();
                break;
            case 1003:
                $this->Forget()
                break;
            case 1004:
                $this->Rem_equip();
                break;
                default:
                break;
        }
    }

上面是同事使用 thinkphp3.* 寫的接口,最近看到了 RESTful 這個概念,兩個是同一個東西嗎?如果不是,那兩個的差別,那種更好呢?謝謝!

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(4)
仅有的幸福

ThinkPHP:是一個免費開源的,快速、簡單的物件導向的輕量級PHP開發框架。
RESTful:一種軟體架構風格,設計風格而不是標準,只是提供了一組設計原則和限制條件。它主要用於客戶端和伺服器互動類別的軟體。基於這個風格設計的軟體可以更簡潔,更有層次,也更容易實現快取等機制。
一個是具體已經實現的框架,另一個是一種設計思想,一個是實際,一個理論;當然理論最終也可以變成實際。

仅有的幸福

api和restfulapi其實都是接口,不同點有兩個:
1、restful使用http code代表狀態
2、resetful最重要的是資源思想,他之所以靈活,是因為他很少參與業務邏輯,只定義資源操作。

伊谢尔伦

可以這麼理解,restful是api的一個設計思想,透過這個思想可以設計出更為合理的、更優雅的api。 ps:看了這個程式碼,我想說,這壓根就不是restful api。

習慣沉默

顯然不是同一個東西! !但狹義理解上來說我們有時候跟客戶端資料互動時通常會把介面叫做API,但其實API的定義會更廣。例如我們在學習一個框架的時候,我們會看它的api文檔,這時候API就不僅僅是數據相關的接口,而是對外提供的方法。

而restful是API實現的一種形式,最明顯的特徵就是在介面URL中,盡量用名詞去代替動詞來表述該介面的意思。 而用http提供的method方法來實現動詞部分,GET用來取得資源,POST用來新建資源(也可以用來更新資源),PUT用來更新資源,DELETE用來刪除資源。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!