leedavis81 / drest
从Doctrine 2实体注解创建一个功能齐全的REST API服务。
1.0.5
2017-05-11 10:04 UTC
Requires
- php: ~5.4|~7.0
- doctrine/common: ~2.3
- doctrine/inflector: ~1.0
- leedavis81/drest-common: ^1.0
- zendframework/zend-code: ~2.0
Requires (Dev)
- doctrine/orm: ~2.3
- leedavis81/altr-ego: ~1.0
- phpunit/phpunit: ~4.1
- symfony/http-foundation: ~2.0
Suggests
- symfony/http-foundation: If you're not using Drest with an existing framework adapters (see documentation) then you MUST include this
- symfony/yaml: If you plan on using the YAML driver you MUST include this.
This package is not auto-updated.
Last update: 2024-09-14 13:50:02 UTC
README
美化Doctrine实体,将其作为REST资源公开
这个库允许您快速将Doctrine实体标注为REST资源。它自带内部路由器,可以独立使用或与现有框架栈一起使用。路由映射到默认或自定义的服务操作,负责处理请求。
设置端点就像在实体中添加一个简单的注解一样简单
/* @Drest\Resource( * routes={ * @Drest\Route( * name="get_user", * route_pattern="/user/:id", * verbs={"GET"} * )}) * @ORM\Table(name="user") * @ORM\Entity */ class User { ....... } // hitting [GET] http://myapplication.com/user/123 may return: { "user": { "name": "lee", "email": "lee@somedomain.com" ... + other attributes set up to be exposed ... } }
文档
查看文档了解如何使用drest
特性
-
快速将现有Doctrine实体标注为功能齐全的REST资源。
-
利用内部路由器匹配资源路由模式。
-
指定您想从实体中公开的数据(包括关系),或者让客户端选择!
-
使用可公开的数据生成数据对象,以便API用户消费。
-
自带JSON和XML表示形式,或您可以创建自己的。
-
允许从客户端请求中检测媒体类型,使您接近RMM级别3。
-
可以从您的现有框架栈独立使用,也可以与之一起使用。
-
允许扩展点,以便您可以配置满足特定需求的需求。