Yii2 的快速配置 api 服务 yii2-fast-api
yii2-fast-api
yii2-fast-api是一个Yii2框架的扩展,用于配置完善Yii2,以实现api的快速开发。
此扩展默认的场景是APP的后端接口开发,因此偏向于实用主义,并未完全采用restfull的标准,方便前端开发处理接口数据以及各种异常。
Installation
使用 Composer 安装
- 在项目中的
composer.json
文件中添加依赖:
"require": {"deepziyu/yii-fast-api": "*" }
执行
$ php composer.phar update
或$ composer update
进行安装。在配置文件中( Yii2 高级版为 main.php,Yii2 基础版为 web.php )注入 fast-api 的配置:
// $config 为你原本的配置 $config = yiihelpersArrayHelper::merge($config,deepziyuyiirestController::getConfig() );return $config;
Usage
- 建立控制器
class YourController extends deepziyuyiirestController { /** * 示例接口 * @param int $id 请求参数 * @return string version api版本 * @return int yourId 你的请求参数 */ public function actionIndex($id) { return ['version'=>'1.0.0','yourId'=>$id]; } }
- 发送请求看看
正常请求
POST /your/index HTTP/1.1 Host: yoursite.com Content-Type: application/json{"id":"10"}
返回
{"code": 200,"data": {"version": "1.0.0","yourId": "10"},"message": "OK" }
缺少参数的请求
POST /your/index HTTP/1.1 Host: yoursite.com Content-Type: application/json
返回错误
{"code": 400,"data": {},"message": "缺少参数:id" }
- 查看自动生成的Api文档
http ://yoursite.com/route/api/index
Words In The End
感谢@暗夜在火星 的PhalApi项目,为此Yii2扩展提供设计的思路。
TODO
- 更完善的文档指南
- Signature 过滤器插件
- 限流插件的使用
- RequestID 以及日志存储追踪的参考
本文转自码云推荐 | 基于 yii2 的快速配置 api 服务 yii2-fast-api,仅供学习交流使用!
转载于:https://www.cnblogs.com/itsharehome/p/8120435.html
Yii2 的快速配置 api 服务 yii2-fast-api相关推荐
- Nova API服务之Nova API服务的启动
Nova API的启动和工作流程.openstack的每个组件都提供API服务,用于接收和处理客户端的HTTP请求. Nova API服务是一个RESTful API服务. 1.Nova API服务的 ...
- API开发平台,企业级API服务发布平台
API开发平台基于微服务架构快速开发API接口服务,是一款轻量级的API服务发布平台.可快速的开发企业级前后端分离的业务系统,通过建立数据模型和业务模型能够无代码快速的发布API服务. RestClo ...
- 阿里云轻量应用服务器基于CentOS系统镜像快速部署Apache服务
阿里云轻量应用服务器提供了Windows Server系统镜像和主流的Linux系统镜像,您可以通过该类镜像创建纯净.安全.稳定的运行环境.本文以CentOS 7.6系统镜像为例,介绍如何快速配置Ap ...
- ginapi服务器性能,如何使用 Gin 和 Gorm 搭建一个简单的 API 服务 (一)
gin-gonic 介绍 Go 语言最近十分火热,但对于新手来说,想立马上手全新的语法和各种各样的框架还是有点难度的.即使是基础学习也很有挺有挑战性. 在这篇文章中,我想用最少的代码写出一个可用的 A ...
- OpenStack之Nova分析——Nova API服务
Nova是OpenStack中最核心的组件,可以说OpenStack中的其它组件都是为Nova服务的.所以Nova也是OpenStack最复杂的组件.Nova服务由多个子服务组成,这些子服务通过RPC ...
- php yii2 api框架,Yii2框架制作RESTful风格的API快速入门教程
先给大家说下什么是REST restful REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移. 它首次出现在2000年Ro ...
- 如何用 Go 快速编写出 HTTP REST API 服务?
在本教程中,明白如何用Go语言写出一个HTTP REST API服务. 作者 | Aurelie Vache 译者 | 槐序,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 以下为译文: ...
- java接口服务编排_GOKU API Gateway CE V3.1.0 发布:新增服务编排、配置版本管理等...
Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang 开发的微服务网关,能够实现高性能 HTTP API 转发.服务编排.多租户管理.API 访问权限控制等目的,拥 ...
- 使用Magicodes.SwaggerUI快速配置SwaggerUI以及设置API分组
Magicodes.SwaggerUI 快速配置和集成SwaggerUI 特点 通过配置文件简单配置即可完成SwaggerUI的API格式JSON生成和集成 支持API分组和隐藏 支持自定义页面和验证 ...
最新文章
- const的用法,特别是用在函数前面与后面的区别!
- Linux中表示“时间”的结构体和相关函数
- mvc core2.1 Identity.EntityFramework Core 注册 (二)
- 剑指offer有python版吗_剑指Offer算法类题目[Python版]
- Oracle -jdbc-java 的类型映射
- 穷举 百文百鸡
- Spring Data JPA 条件查询的关键字
- spring集合的注入
- Oracle12c部署,允许远程访问
- 【JAVA 第四章 流程控制语句】课后习题 冒泡排序的运用
- linux查看进程占用内存与ps命令
- python一维数组排序_【Python】数组排序
- doip 源码_汽车DoIP通讯协议的前世今生
- FileZilla Server使用实践
- gerrit服务器邮箱设置(三)
- LOJ#515. 「LibreOJ β Round #2」贪心只能过样例(bitset)
- 大数据开发有哪些难点?
- 原生JS --360度全景展示
- 高德地图宣布品牌升级,打造出门好生活开放服务平台
- html手机端页面meta,移动端网页meta设置和响应式
热门文章
- vld检测不输出_输出轴热处理形变超差,找找原因
- oracle修改数据库国际字符集,Oracle修改数据库字符集
- 沟通模型包含5个状态
- Mybatis用#{}从传递过来的参数中取值
- docker中命令docker images
- aes js 加盐值 解密_Java已有AES加解密,现需要前端Javascript加密调接口,返回的数据需要解密,目前互..._慕课猿问...
- 网络知识:整理各种路由器组网方法!网跨段也能访问!
- 收集 48 个 JavaScript 代码片段,仅需 30 秒就可理解(值得收藏)
- 程序大佬和菜鸟的区别,太准确了!
- 如何能出令自己满意的代码