🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#RESTful REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。REST提出了一些设计概念和准则: 1. 网络上的所有事物都被抽象为资源(resource); 2. 每个资源对应一个唯一的资源标识(resource identifier); 3. 通过通用的连接器接口(generic connector interface)对资源进行操作; 4. 对资源的各种操作不会改变资源标识; 5. 所有的操作都是无状态的(stateless) 资源控制器可让你无痛建立和资源相关的 RESTful 控制器。例如,你可能希望创建一个控制器,它可用来处理针对你的应用程序所保存相片的 HTTP 请求。 #示例 1 使用命令创建控制器 ``` php hd controller:make home.photo resource ``` 2 我们注册一个指向此控制器的资源路由: ``` Route::resource('/photo', 'home/photo'); ``` 此单一路由声明创建了多个路由,用来处理各式各样和相片资源相关的 RESTful 行为。同样地,产生的控制器已有各种和这些行为绑定的方法,包含用来通知你它们处理了那些 URI 及动词。 由资源控制器处理的行为 ``` 动词 路径 行为 GET /photo 索引 GET /photo/create 创建 POST /photo 保存 GET /photo/{photo} 显示 GET /photo/{photo}/edit 编辑 PUT /photo/{photo} 更新 DELETE /photo/{photo} 删除 ``` ``` <?php namespace Home\Controller; use Hdphp\Controller\Controller; class PhotoController extends Controller{ //GET /photo 索引 public function index() { echo 'index'; } //GET /photo/create 创建 public function create() { echo 'create'; } //POST /photo 保存 public function store() { echo 'store'; } //GET /photo/{photo} 显示 public function show() { echo 'show'; } //GET /photo/{photo}/edit 编辑 public function edit() { echo 'edit'; } //PUT /photo/{photo} 更新 public function update() { echo 'update'; } //DELETE /photo/{photo} 删除 public function destroy() { echo 'destroy'; } } ```