Restful API現在非常的流行啊,目前工作的項目也使用了ASP.NET Web API技術。用下來的感覺是前台數據的展現層可以和后台數據的處理層解耦性很好。所以在開發階段,前台數據展現頁面布局和后台數據處理調整起來都很方便。Restful API利用了http協議,配合一些類似backbone這樣的js mvc框架非常好用。
最近有一個需求是用php實現一個簡單的 Restful WebAPI。因為之前用的ASP.NET Web API,所以就模擬實現一下它的結構。
由路由Router來選擇Controller,由method選擇Action,數據傳輸使用json。舉個例子
Get /api/resouces 返回資源信息 Controller:Resouces Action: get()
Get /api/resouces/{id} 返回資源信息 Controller:Resouces Action: get($id)
Post /api/resouces 創建資源信息 Controller:Resouces Action: post()
Put /api/resouces/{id} 更新資源信息 Controller:Resouces Action: get($id)
Delete /api/resouces/{id} 刪除資源信息 Controller:Resouces Action: delete($id)
總結看來,對於url我們只需要處理2種:/api/resouces 和 /api/resouces/2。
下面的文章從路由開始的記錄一個restful api 的簡單實現。
(做個說明,由於本人php編程經驗有限,希望大家對文章中出現的任何問題都不吝賜教,可以共同進步)