[ Laravel 5.3 文档 ] 序言 —— 发行版本说明

1、支持政策 对于 LTS 版本,比如 Laravel 5.1,我们将会提供为期两年的 bug 修复和三年的安全修复支持。LTS 版本将会提供最长时间的支持和维护。 对于其他通用版本,只提供六个月的 bug 修复和一年的安全修复支持,比如 Laravel 5.3。 2、Laravel 5.3 Laravel 5.3 在 5.2 的基础上继续进行优化,提供了大量新功能和新特性:基于驱动的通…

Laravel 5.3 新特性系列 —— 路由文件及路径修改

1、回顾Laravel 5.2中路由的修改 在 Laravel 5.2 的routes.php中我们可以看到路由被分割成两个路由群组:web和api,这样做的原因是基于中间件群组的理念:开箱即可拥有web和api两组路由。 web路由组提供了普通web用户所需的所有功能特性:如session、cookie、CSRF防护等等,相比之下,api路由组更加轻量级,只提供了throttle中间件…

基于 Laravel 的 API 服务端架构代码

1、源码地址 原文出处:http://flc.ren/2016/08/549.html GitHub:https://github.com/flc1125/ApiServer 2、部署说明 现有API基于laravel框架开发,本次介绍也针对laravel。可根据文档自行调整,以适用其他框架下使用! 2.1 数据库相关 执行如下SQL语句 CREATE TABLE `prefix_app…

使用 Laravel API 文档生成器扩展包自动为项目生成 API 文档

1、简介&安装 Laravel API 文档生成器扩展包可以基于 Laravel 应用路由自动生成项目 API 文档。 我们使用Composer安装这个扩展包: $ composer require mpociot/laravel-apidoc-generator 安装完成后需要到config/app.php中注册服务提供者: Mpociot\ApiDoc\ApiDocGener…

使用 Lumen + Stormpath 为移动 App 提供后端 API

1、概述 Stormpath 致力于为开发者提供用户认证 API,通过 Stormpath 我们可以快速搭建起用户认证系统。最近,Stormpath 官方将Lumen 集成到 Stormpath 的 PHP SDK 中(在此之前 Laravel 与 Stormpath 的集成已经做好:stormpath-laravel),这样,你只需要花费几分钟的时间就可以为移动 App 提供一个 PH…

Laravel & Lumen RESTFul API 扩展包:Dingo API(五) —— 转化器(Transformer)

1、简介 通过转化器,你可以将对象转化为数组,并强制转化整型和布尔类型,包括分页结果和嵌套关联。 本章节我们主要讨论转化器及其使用,这里的转化器包括以下两层意思: 转化层(transformation layer)是一个准备和处理转化器的库 转化器(transformer)是一个获取原始数据并将其转化为数组格式的类,处理器的处理方式取决于转化层。 2、使用转化器 有多种方式使用转化器。 …

Laravel & Lumen RESTFul API 扩展包:Dingo API(四) —— 错误和异常响应

在构建API的时候处理错误是一件痛苦的事儿,在Dingo API中,你不需要手动构建错误响应,只需要抛出一个继承自Symfony\Component\HttpKernel\Exception\HttpException的异常,API会自动为你处理这个响应。 下面是Dingo API内置的Symfony异常: 异常 状态码 Symfony\Component\HttpKernel\Exce…

Laravel & Lumen RESTFul API 扩展包:Dingo API(三) —— Response(响应)

一个API的功能主要是获取请求并返回响应给客户端,响应的格式是多样的,比如JSON,返回响应的方式也是多样的,这取决于当前构建的API的复杂度以及对未来的考量。 返回响应最简单的方式是直接从控制器返回数组或对象,但不是每个响应对象都能保证格式正确,所以你要确保它们实现了ArrayObject或者Illuminate\Support\Contracts\ArrayableInterface…

Laravel & Lumen RESTFul API 扩展包:Dingo API(二) —— 创建 API Endpoint(路由)

Endpoint 就是路由的另一种术语,当我们讨论API时,很多人习惯将访问的路由看作Endpoint。 1、版本号 为了避免和主应用的路由混在一起,Dingo API使用了自己的路由器,正因如此我们首先需要获取API路由器实例来创建Endpoint: $api = app(‘Dingo\Api\Routing\Router’); 接下来需要定义版本号,从而可以为多版本API创建同样的E…

Laravel & Lumen RESTFul API 扩展包:Dingo API(一) —— 安装配置篇

Dingo API 为开发者提供了一整套工具以便帮助你轻松、快捷的构建自己的API。这些工具包括: 内容协商 多认证适配器 API版本 频率限制 响应转化和格式化 错误及异常处理 内部请求 API文档 1、安装 安装该扩展包之前需要保证已经安装以下程序: Laravel 5.1+ 或 Lumen 5.1+ PHP 5.5.9+ 然后通过如下Composer命令安装扩展包: compose…