laravel接口开发—dingo的安装配置
Dingo Api是致力于提供给开发者一套工具,帮助你方便快捷的建造你自己的API
github: https://github.com/dingo/api/
wiki: /
安装
下面使用均在laravel环境中进行
安装组件
方法一
在中添加信息
"require": {
"dingo/api": "^"
}
执行composer更新指令
composer update
方法二
直接执行composer安装
composer require dingo/api:
生成配置文件
执行下面命令生成配置文件 /config/
php artisan vendor:publish
输入dingo的编号并回车,会在config
下生成的配置文件
配置文件
配置统一定义在 config/
中,项目中可以在.env
中设置
#接口围绕:[x]本地和私有环境 [prs]公司内部app使用 [vnd]公开接口
'standardsTree' => env('API_STANDARDS_TREE', 'x')
#项目名称
'subtype' => env('API_SUBTYPE', 'laradmin')
#Api前缀 通过 来访问 API。
'prefix' => env('API_PREFIX', 'api')
#api域名
'domain' => env('API_DOMAIN', ''),
#版本号
'version' => env('API_VERSION', 'v1')
#开发时开启DEBUG便于发现错误
'debug' => env('API_DEBUG', false)
prefix 与 domain 只能二选一,一个需要设置为null
.env
设置示例
API_STANDARDS_TREE=vnd
API_SUBTYPE=myapp
API_PREFIX=api
#API_DOMAIN=api.myapp.com
API_VERSION=v1
接口路由
在 routes/
文件定义
$api = app(\Dingo\Api\Routing\Router::class);
#默认配置指定的是v1版本,可以直接通过 {host}/api/version 访问到
$api->version('v1', function ($api) {
$api->get('version', function () {
return 'v1';
});
$api->get('abc', function () {
return 'abc';
});
});
#如果v2不是默认版本,需要设置请求头
#Accept: application/[配置项standardsTree].[配置项subtype].v2+json
#Accept: application/
$api->version('v2', function ($api) {
$api->get('version', function () {
return 'v2';
});
});
THE END