RESTful PHP框架,支持资源,方法和格式
似乎有各种各样的
PHP框架声称RESTful设计模式.
我正在寻找一个能够很好地为这三个项目(或它们的等价物)提供可靠解决方案的框架. 1.资源请求 首先要做的是能够处理资源解析的URL. /path/to/resource = controller.action() 2.请求方法 第二件事是处理不同类型的请求方法. GET /path/to/resource = controller.get() POST /path/to/resource = controller.post() 如果没有请求方法匹配,可能会回退到通用处理程序. GET /path/to/resource = controller.action() PUT /path/to/resource = controller.action() POST /path/to/resource = controller.action() 3.响应格式 最后,我看到人们将格式附加到URL的末尾,以帮助框架知道预期的响应类型. /path/to/resource.html /path/to/resource.json 人们在标题中传递响应格式或作为URI参数(?format = json)的其他方式. 这些是必须涵盖的三个项目.但是,它们不必像我刚刚展示的那样处理 – 这些只是示例. 解决方法
我一直在研究类似的框架,但在PHP世界中似乎没有太多进展.
Here是关于PHP REST框架的相关问题.
Recess看起来很有趣,我发现Zend Framework的新REST controllers and routers非常有用.我在also started implementing an easier approach顶部的Zend组件.基本上你注册了一堆视图渲染器(HTML,JSON和简单形式的XML支持开箱即用,通过接受头解析或用format =?参数覆盖它)和身体解析器(Web Foms和JSON启用) )并基于此界面: interface Feathry_Rest_Resource { public function index($params = null); public function get($id,$params = null); public function post($data,$params = null); public function put($data,$id = null,$params = null); public function delete($id,$params = null); } 每个方法返回一个普通数组或对象(使用toArray方法),您可以创建一个RESTful资源.优点是,您的资源完全与任何Representation分离.他们甚至不必知道他们正在通过HTTP使用,只要他们遵循界面.它仍然非常alpha,并且它似乎没有太大的兴趣,但它确实有效,所以也许你想尝试一下. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |