laravel 5.5 api接口开发: 安装dingo/api
dingo/api 是一个 Lumen 和 Laravel 都可用的 RestFul 工具包,帮助我们快速的开始构建 RestFul Api。参考文档地址:https://github.com/dingo/api/
第一步:安装dingo/api
composer require dingo/api

第二步:编译配置文件
php artisan vendor:publish
第三步:编辑生成的api.php
1、API_STANDARDS_TREE 值说明:
未注册的树(x)主要表示本地和私有环境
私有树(prs)主要表示没有商业发布的项目
供应商树(vnd)主要表示公开发布的项目
如果你不确定该如何选择,x 树或者说未注册树都是安全的。
2、API_SUBTYPE=myapp
子类型通常是应用程序或项目的短名称,都是小写的。
3、前缀和子域:
如果你曾经使用过 API 你就会知道大多数服务都来自子域或前缀。前缀或子域是必须的,但只需要一个。请避免使用版本号作为你的前缀或子域,因为版本控制是通过 header 头 Accept 处理的
1)前缀:API_PREFIX=api
2)子域:API_DOMAIN=api.myapp.com
4、版本号 : API_VERSION=v1
这个版本号是你的 API 的默认版本号,并且会在一些未提供版本号的情况下作为回调的默认值使用。在生成 API 文档时也会使用这个版本号作为默认值。
5、名称:API_NAME=My API
你的 API 的名称只会在你使用 API Blueprint 命令生成文档的时候使用。使用此名称可以避免你每次生成文档的时候都必须手动定义名称。
6、条件请求 API_CONDITIONAL_REQUEST=false 【你可以在你的 .env 文件中将其配置为关闭】
『条件请求』默认为开启状态,这有利于客户端的缓存机制在可能的情况下缓存 API 请求。
7、严格模式:API_STRICT=false
严格模式要求客户端发送 Accept 头,代替配置文件中配置的默认版本。这意味着你将不能通过浏览器直接访问你的 API。
如果开启严格模式,发送非法的 Acceept 标头会抛出一个未处理的异常 Symfony\Component\HttpKernel\Exception\BadRequestHttpException ,你需要自己处理这个异常。
8、响应格式 :API_DEFAULT_FORMAT=json
默认的响应格式是 JSON,并有一个 JSON 响应格式是被默认注册。
你可以在 .env 文件中配置默认的响应格式。更进一步的响应格式配置需要在一个 published 的配置文件,服务提供器,或是 bootstrap 文件中。
9:错误格式
当包遇到错误时,它会尝试生成一个通用的错误响应,而不是将异常转储给用户。 它使用的错误格式可以根据自己的喜好进行配置。
您必须在已发布的配置文件或引导程序文件中对其进行配置。
$app['Dingo\Api\Exception\Handler']->setErrorFormat([
'error' => [
'message' => ':message',
'errors' => ':errors',
'code' => ':code',
'status_code' => ':status_code',
'debug' => ':debug'
]
]);
10、调试模式:API_DEBUG=true
该包处理的通用错误包括一个 debug 键,当启用这个键时,将会填充堆栈跟踪详细信息。你可以在 .env 文件中配置它。

浙公网安备 33010602011771号