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…

使用 Laravel Generator 快速为 Laravel 应用生成CRUD、API、测试用例代码 —— 使用篇

API生成器 要生成API,我们可以使用如下命令: php artisan infyom:api $MODEL_NAME$ 其中$MODEL_NAME$需要替换成你的模型名称,例如: php artisan infyom:api Post 然后需要在命令行手动输入模型对应表的字段: 这里我们暂且输入title和content字段(id和时间戳会自动生成无需在这里添加),完成后输入exit…

使用 Laravel Generator 快速为 Laravel 应用生成CRUD、API、测试用例代码 —— 介绍篇

很多项目中我们都需要做创建API、CRUD这类事情,我们所面临的问题是每次都要创建一堆迁移文件、模型类、控制器、Repository甚至是测试用例,这些文件基本结构一致,只是类名不同而已,我们需要简化这个过程,使用统一模板快速生成这些类文件,为此诞生了第一个扩展包laravel-api-generator,在短时间内这个扩展包获得了大量关注,吸引了Laravel社区的很多人开始使用它,同…

Laravel 5 中使用 JWT(Json Web Token) 实现基于API的用户认证

在JavaScript前端技术大行其道的今天,我们通常只需在后台构建API提供给前端调用,并且后端仅仅设计为给前端移动App调用。用户认证是Web应用的重要组成部分,基于API的用户认证有两个最佳解决方案 —— OAuth 2.0 和 JWT(JSON Web Token)。 1、JWT定义及其组成 JWT(JSON Web Token)是一个非常轻巧的规范。这个规范允许我们使用JWT在…

Laravel 5.2 新特性系列 —— 访问频率限制中间件throttle的使用

1、访问频率限制概述 频率限制经常用在API中,用于限制独立请求者对特定API的请求频率。例如,如果设置频率限制为每分钟1000次,如果一分钟内超过这个限制,那么服务器就会返回 429: Too Many Attempts.响应。 通常,一个编码良好的、实现了频率限制的应用还会回传三个响应头: X-RateLimit-Limit, X-RateLimit-Remaining和 Retry…

Lumen 5.2 已正式发布,新版本将专注于提供无状态的 JSON API

Lumen 5.2.0 现在正式发布了!本次发布包含 Laravel 5.2 的组件并且对核心理念做了显著修改。 现在使用 Lumen 的用户要注意官方文档中的以下几点说明: 只提供无状态的 API Lumen 5.2 对 Lumen 做了大瘦身 —— 只专注于提供无状态的 JSON API。因此,框架将不再支持会话(Session)和视图(View),如果要使用这些功能,需要使用完整的…

123