#接口围绕:[ x ] 本地和私有环境 [ prs ] 公司内部app使用 [ vnd ] 公开接口
standradsTree : x
#项目名称
subtype: mcshop
#API前缀,通过www.mcshop.com/api来访问 API
prifix: api
#api域名
domain: mcshop.com
#版本号
version: v1
`prifix` 和 `domain` 只能二选一
接口版本
在 routes\api.php
文件中定义
$api = app('Dingo\Api\Routing\Router');
# 默认配置指定的是 v1 版本,可以直接通过{host}/api/version访问到
$api->version('v1',function ($api){
$api->get('version',function (){
return "v1";
});
});
# 如果 v2 不是默认版本, accept: application/[配置项 standardsTree].[配置项 subtype].v2+json
$api->version('v2',function ($api){
$api->get('version',function (){
return "v2";
});
});
响应生成器Helpers
作用:提供一个 流畅的接口去建立一个定制化的响应。
响应的生成器通常与transformer相结合
//响应一个数组
return $this->response()->array(User::get()->toArray());
Transformers
作用:便捷的将对象转换为一个数组
//分页响应
return $this->response()->paginator(User::paginate(1),new UserTransformer());
访问节流限制
$api->version('v1',['namespace'=>'App\Http\Controllers\Api'],function ($api){
$api->get('version',['middleware'=>'api.throttle','limit'=>2,'expires'=>1,function (){
return "v1";
}]);
});