/APIJSON

🏆码云最有价值开源项目 🚀后端接口和文档自动化,前端(客户端) 定制返回 JSON 的数据和结构!🏆Gitee Most Valuable Project 🚀A JSON Transmission Protocol and an ORM Library for automatically providing APIs and Docs.

Primary LanguageJavaOtherNOASSERTION

Tencent is pleased to support the open source community by making APIJSON available.
Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved.
This source code is licensed under the Apache License Version 2.0

APIJSON

🏆 码云最有价值开源项目
🚀 后端接口和文档自动化,前端(客户端) 定制返回JSON的数据和结构!

   

     

   

English  通用文档 视频教程 在线工具


APIJSON是一种专为API而生的 JSON网络传输协议 以及 基于这套协议实现的ORM库。
为 简单的增删改查、复杂的查询、简单的事务操作 提供了完全自动化的API。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是 BaaS、Serverless、互联网创业项目和企业自用项目。

通过自动化API,前端可以定制任何数据、任何结构!
大部分HTTP请求后端再也不用写接口了,更不用写文档了!
前端再也不用和后端沟通接口或文档问题了!再也不会被文档各种错误坑了!
后端再也不用为了兼容旧接口写新版接口和文档了!再也不会被前端随时随地没完没了地烦了!

特点功能

在线解析

  • 自动生成接口文档,清晰可读永远最新
  • 自动校验与格式化,支持高亮和收展
  • 自动生成各种语言代码,一键下载
  • 自动管理与测试接口用例,一键共享
  • 自动给请求JSON加注释,一键切换

对于前端

  • 不用再向后端催接口、求文档
  • 数据和结构完全定制,要啥有啥
  • 看请求知结果,所求即所得
  • 可一次获取任何数据、任何结构
  • 能去除重复数据,节省流量提高速度

对于后端

  • 提供通用接口,大部分API不用再写
  • 自动生成文档,不用再编写和维护
  • 自动校验权限、自动管理版本、自动防SQL注入
  • 开放API无需划分版本,始终保持兼容
  • 支持增删改查、模糊搜索、正则匹配、远程函数等

APIJSON接口展示

使用 APIAuto-机器学习HTTP接口工具来展示基于 APIJSON 协议的 HTTP API:

多表关联查询、结构自由组合、多个测试账号、一键共享测试用例


自动生成封装请求JSON的Android与iOS代码、一键自动生成JavaBean或解析Response的代码


自动保存请求记录、自动生成接口文档,可添加常用请求、快捷查看一键恢复


一键自动接口回归测试,不需要写任何代码(注解、注释等全都不要)


一图胜千言 - 部分基础功能概览



APIJSON App演示

使用 APIJSON + ZBLibrary 开发的 Android 客户端 Demo。以下 Gif 图看起来比较卡,实际在手机上 App 运行很流畅:


为什么要用APIJSON?

前后端 关于接口的 开发、文档、联调 等 10 大痛点解析
https://github.com/Tencent/APIJSON/wiki

常见问题

1.如何定制业务逻辑?

在后端编写 远程函数,可以拿到 session、version、当前 JSON 对象、参数名称 等,然后对查到的数据自定义处理
Tencent#101

2.如何控制权限?

在 Access 表配置校验规则,默认不允许访问,需要对 每张表、每种角色、每种操作 做相应的配置,粒度细分到 Row 级
Tencent#12

3.如何校验参数?

在 Request 表配置校验规则 structure,提供 NECESSARY、TYPE、VERIFY 等通用方法,可通过 远程函数 来完全自定义
https://github.com/Tencent/APIJSON/wiki#%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86


其它问题见 Closed Issues
https://github.com/Tencent/APIJSON/issues?q=is%3Aissue+is%3Aclosed

快速上手

1.后端部署

可以跳过这个步骤,直接用APIJSON服务器IP地址 apijson.cn:8080 来测试接口。
见  APIJSON后端部署 - Java

2.前端部署

可以跳过这个步骤,直接使用 APIAuto-自动化接口管理工具 或 下载客户端App。
见  Android  或  iOS  或  JavaScript

下载客户端App

仿微信朋友圈动态实战项目
APIJSONApp.apk

测试及自动生成代码工具
APIJSONTest.apk

使用登记


更多 APIJSON 使用者

贡献者们

主项目 APIJSON 的贡献者们和 生态周边项目 的作者们:



感谢大家的贡献。

规划及路线图

新增功能、强化安全、提高性能、增强稳定、完善文档、丰富周边、推广使用
https://github.com/Tencent/APIJSON/blob/master/Roadmap.md

我要赞赏

如果你喜欢 APIJSON,感觉 APIJSON 帮助到了你,可以点右上角 ⭐Star 支持一下,谢谢 ^_^



技术交流

如果有什么问题或建议可以 提ISSUE 或 加群,交流技术,分享经验。
如果你解决了某些bug,或者新增了一些功能,欢迎 贡献代码,感激不尽~
https://github.com/Tencent/APIJSON/blob/master/CONTRIBUTING.md

QQ 技术群: 734652054(新)、607020115(旧)

相关推荐

APIJSON, 让接口和文档见鬼去吧!

仿QQ空间和微信朋友圈,高解耦高复用高灵活

后端开挂:3行代码写出8个接口!

后端自动化版本管理,再也不用改URL了!

APIJSON简单部署和使用

3步创建APIJSON后端新表及配置

APIJSON 自动化接口和文档的快速开发神器 (一)

APIJSON在mac电脑环境下配置去连接SQL Server

APIJSON复杂业务深入实践(类似12306订票系统)

生态项目

APIJSON-Demo APIJSON 各种语言、各种框架的使用示例项目

apijson-orm APIJSON ORM 库,可通过 Maven, Gradle 等远程依赖

apijson-framework APIJSON 服务端框架,可通过 Maven, Gradle 等远程依赖

APIAuto 机器学习测试、自动生成代码、自动静态检查、自动生成文档与注释等,做最先进的接口管理工具

UnitAuto 机器学习自动化单元测试平台,零代码、全方位、自动化 测试 方法/函数 的正确性和可用性

apijson-doc APIJSON 官方文档,提供排版清晰、搜索方便的文档内容展示,包括设计规范、图文教程等

APIJSONdocs APIJSON 英文文档,提供排版清晰的文档内容展示,包括详细介绍、设计规范、使用方式等

apijson.org APIJSON 官方网站,提供 APIJSON 的 功能简介、登记用户、作者与贡献者、相关链接 等

APIJSON.NET C# 版 APIJSON ,支持 MySQL, PostgreSQL, SQL Server, Oracle, SQLite

apijson-php PHP 版 APIJSON,基于 ThinkPHP,支持 MySQL, PostgreSQL, SQL Server, Oracle 等

apijson-node Node.ts 版 APIJSON,提供 nestjs 和 typeorm 的 Demo,支持 MySQL, PostgreSQL, SQL Server, Oracle

uliweb-apijson Python 版 APIJSON,支持 MySQL, PostgreSQL, SQL Server, Oracle, SQLite 等

APIJSON Go 版 APIJSON,功能开发中...(不可用且长期未更新,期待热心开发者帮助完善或新增项目)

APIJSONKOTLIN Kotlin 版 APIJSON,基础框架搭建中...(不可用且长期未更新,期待热心开发者帮助完善或新增项目)

APIJSONParser 第三方 APIJSON 解析器,将 JSON 动态解析成 SQL

ApiJsonByJFinal 整合 APIJSON 和 JFinal 的 Demo

SpringServer1.2-APIJSON 智慧党建服务器端,提供 上传 和 下载 文件的接口

apijson-builder 一个方便为 APIJSON 构建 RESTful 请求的 JavaScript 库

AbsGrade 列表级联算法,支持微信朋友圈单层评论、QQ空间双层评论、百度网盘多层(无限层)文件夹等

APIJSON-Android-RxJava 仿微信朋友圈动态实战项目,ZBLibrary(UI) + APIJSON(HTTP) + RxJava(Data)

Android-ZBLibrary Android MVP快速开发框架,Demo全面,注释详细,使用简单,代码严谨

感谢热心的作者们的贡献,点 ⭐Star 支持下他们吧。

持续更新

https://github.com/Tencent/APIJSON/commits/master

工蜂主页

https://git.code.tencent.com/Tencent_Open_Source/APIJSON

码云主页

https://gitee.com/TommyLemon/APIJSON