我一直在研究API并为我们正在开发的项目开发REST API.
如果理解了所说的大部分内容,但是我不理解第三个代码示例,以及路由信息的位置.
他们提供的例子是:
$data = RestUtils::processRequest(); switch($data->getmethod) { case 'get': // retrieve a list of users break; case 'post': $user = new User(); $user->setFirstName($data->getData()->first_name); // just for example,this should be done cleaner // and so on... $user->save(); break; // etc,etc,etc... }
我不确定的部分是如何接受原始请求,即/ get / user / 1 – 如何将其路由到脚本的正确部分.
如果有另一个SO问题(我已经搜索了很长时间)或任何进一步的教育示例,请指出我正确的方向.
更新
我已经找到了一些路由PHP类,但没有什么只是小而且做了它在锡上的说法,一切似乎都在路由2000其他东西.
我现在拥有这个项目所需的所有类,因为我希望从URI访问它们,即:
/数据/用户
/数据/使用者/ 1
/散列/用户
/散列/用户/ 1
/放/用户/ 1?JSON = {}数据
因此所有这些都应该使用users类,然后将data,hash或put方法之一传递给方法作为参数.
如果有人能够解释这一点是如何工作的那将是一个巨大的帮助!
谢谢 :)
解决方法
从一开始,您看起来就像您指出的网站不包括路由器或调度员.有很多PHP5框架,包括路由和/或调度或一些描述. (
http://en.wikipedia.org/wiki/Comparison_of_Web_application_frameworks#PHP)
路由器将是一个具有预定义路由列表的类,这些路由可能非常基本或非常复杂,所有这些都取决于您想要做的事情.一个好的REST路由器IMO看起来像这样:
:module/:controller/:params
然后路由器将根据HTTP请求(GET,POST,PUT,DELETE,OPTIONS)路由到正确的操作
public function getAction($id) { // Load item $id }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。