php Restful api 示例

因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现”API First”的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论

restful api 格式如下:

GET /zoos:列出所有动物园
POST /zoos:新建一个动物园
GET /zoos/ID:获取某个指定动物园的信息
PUT /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息)
PATCH /zoos/ID:更新某个指定动物园的信息(提供该动物园的部分信息)
DELETE /zoos/ID:删除某个动物园
GET /zoos/ID/animals:列出某个指定动物园的所有动物
DELETE /zoos/ID/animals/ID:删除某个指定动物园的指定动物

php示例如下:
路由文件:

    //获取列表
    $router->get('activity', 'ActivityController@index');
    //获取某一个活动
    $router->get('activity/{id}', 'ActivityController@get');
    //创建一个活动
    $router->post('activity', 'ActivityController@create');
    //更新一个活动
    $router->put('activity/{id}', 'ActivityController@update');
    //删除一个活动
    $router->delete('activity/{id}', 'ActivityController@delete');

controller文件如下:

//使用restfulapi实现activity的curd
class ActivityController
{
    //获取列表
    public function index()
    {
        return Resp::outs(Activity::all());
    }

    //获取某一个活动
    public function get($id)
    {
        return Resp::outs(Activity::where('id', $id)->first());
    }

    //创建一个活动
    public function create(Request $request)
    {
        $data = $request->all();
        return Resp::outs(Activity::create($data));
    }

    //更新一个活动
    public function update(Request $request, $id)
    {
        $data = $request->all();
        return Resp::outs(Activity::where('id', $id)->update($data));
    }

    //删除一个活动
    public function delete($id)
    {
        return Resp::outs(Activity::where('id', $id)->delete());
    }
}

可以用curl进行测试

 curl 'http://www.loanapi.com/activity'
 curl 'http://www.loanapi.com/activity/26'
 curl -X POST 'http://www.loanapi.com/activity' -d 'title=xly'
 curl -X PUT 'http://www.loanapi.com/activity/26' -d 'title=xly'
 curl -X DELETE 'http://www.loanapi.com/activity/26'

猜你喜欢

转载自blog.csdn.net/b1303110335/article/details/79914871