强大,腾讯开源前后端接口开发工具!

2023-05-27 0 300

上一则:3600万中国人在抖音“上北大”

APIJSON是啥?

APIJSON是一类为API而生的JSON互联网统计数据传输协定。

为 单纯的校订改查、繁杂的查阅、单纯的外交事务操作方式 提供更多了全然手动化的API。

能急剧减少合作开发和沟通交流生产成本,精简合作开发业务流程,延长合作开发阶段。

适宜较大型其间端分立的工程项目,特别是互联网创业团队。

透过手动化API,后端能订制任何人统计数据、任何人内部结构!

绝大部分HTTP允诺后端非但不必写USB了,更不必写文件格式了!

后端非但不必和后端沟通交流USB或文件格式难题了!非但不会被文件格式各式各样严重错误坑了!

后端非但不必为的是相容旧USB写旧版USB和文件格式了!非但不会被后端足不出户无休止地烦了!

特征机能

新浪网导出

手动聚合文件格式,明晰可读总有一天新一代

自动聚合允诺标识符,全力支持Android和iOS

手动聚合大部份JavaBean,全屏浏览

手动管理工作单元测试,全屏共享资源

手动奇偶校验与序列化JSON,全力支持GT5516SBB和收展

强大,腾讯开源前后端接口开发工具!对于后端

不必再向后端催USB、求文件格式

统计数据和内部结构全然订制,要啥有啥

看允诺知结果,所求即所得

能去除重复统计数据,节省流量提高速度强大,腾讯开源前后端接口开发工具!对于后端

提供更多通用USB,绝大部分API不必再写

手动聚合文件格式,不必再编写和维护

手动奇偶校验权限、手动管理工作版本

查阅API无需划分版本,始终保持相容

全力支持校订改查、模糊搜索、正则匹配、远程函数等强大,腾讯开源前后端接口开发工具!

举个栗子(微信朋友圈的动态列表):

允诺:

{

    “[]”: {                               //允诺一个array        “page”0,                        //array条件        “count”:2

,        

        “User”: {                         //允诺查阅名为User的table,返回名为User的JSONObject            “sex”0                      //object条件

        },

        “Moment”

: {

            “userId@”: “/User/id//缺省依赖路径,从同级object的路径开始

        },

        “Comment[]”: {                    //允诺一个名为Comment的array             “page”0

,

            “count”2

,

            “Comment”

: {

                 “momentId@”: “[]/Moment/id”  //完整依赖路径

             }

        }

    }

}

返回:

{

    “[]”

:[

        {

            “User”

:{

                “id”:38710

,

                “sex”:0

,

                “phone”:“1300038710”

,

                “name”:“Name-38710”

,

                “head”:“http://static.oschina.net/uploads/user/1218/2437072_100.jpg?t=1461076033000”

            },

            “Moment”

:{

                “id”:470

,

                “title”:“Title-470”

,

                “content”:“This is a Content…-470”

,

                “userId”:38710

,

                “pictureList”:[“http://static.oschina.net/uploads/user/585/1170143_50.jpg?t=1390226446000”

]

            },

            “Comment[]”

:[

                {

                    “Comment”

:{

                        “id”:4

,

                        “parentId”:0

,

                        “momentId”:470

,

                        “userId”:310

,

                        “targetUserId”:14604

,

                        “content”:“This is a Content…-4”

,

                        “targetUserName”:“targetUserName-14604”

,

                        “userName”:“userName-93781”

                    }

                },

                {

                    “Comment”

:{

                        “id”:22

,

                        “parentId”:221

,

                        “momentId”:470

,

                        “userId”:332

,

                        “targetUserId”:5904

,

                        “content”:“This is a Content…-22”

,

                        “targetUserName”:“targetUserName-5904”

,

                        “userName”:“userName-11679”

                    }

                }

            ]

        },

        {

            “User”

:{

                “id”:70793

,

                “sex”:0

,

                “phone”:“1300070793”

,

                “name”:“Name-70793”

,

                “head”:“http://static.oschina.net/uploads/user/1174/2348263_50.png?t=1439773471000”

            },

            “Moment”

:{

                “id”:170

,

                “title”:“Title-73”

,

                “content”:“This is a Content…-73”

,

                “userId”:70793

,

                “pictureList”:[“http://my.oschina.net/img/portrait.gif?t=1451961935000”

]

            },

            “Comment[]”

:[

                {

                    “Comment”

:{

                        “id”:44

,

                        “parentId”:0

,

                        “momentId”:170

,

                        “userId”:7073

,

                        “targetUserId”:6378

,

                        “content”:“This is a Content…-44”

,

                        “targetUserName”:“targetUserName-6378”

,

                        “userName”:“userName-88645”

                    }

                },

                {

                    “Comment”

:{

                        “id”:54

,

                        “parentId”:0

,

                        “momentId”:170

,

                        “userId”:3

,

                        “targetUserId”:62122

,

                        “content”:“This is a Content…-54”

,

                        “targetUserName”:“targetUserName-62122”

,

                        “userName”:“userName-82381”

                    }

                }

            ]

        }

    ]

}

APIJSON怎么保证服务端返回给不同版本客户端的数据一致?

比如我上一个版本一个USB返回的值是a,现在这个版本要对大部份版本客户端返回a+b,用传统方法只需要服务端把这个USB的返回值改下就好了,USB和客户端都不必改。

用APIJSON不就会导致对有些版本返回的是a,有些是a+b,这样就不能统一了?

APIJSON对允诺的导出和响应的操作方式都是在服务端完成的,对应的是APIJSON(Server)里的project。

服务端能拦截到相关允诺,比如允诺a的值,把原本返回的a改成a+b就能保证对大部份版本客户端返回a+b。也不需要客户端改标识符,至于USB就更不必管了,因为根本没有USB。

源码及文件格式

Github:https://github.com/TommyLemon/APIJSON

开放源码中国:http://git.oschina.net/TommyLemon/APIJSON

强大,腾讯开源前后端接口开发工具! 猜你喜欢

1、GitHub 标星 3.2w!史上最全技术人员面试手册!FackBoo发起和总结

2、如何才能成为优秀的架构师?

3、从零开始搭建创业公司后台技术栈

4、程序员一般能从什么平台接私活?

5、37岁程序员被裁,120天没找到工作,无奈去小公司,结果懵了…

6、滴滴业务中台构建实践,首次曝光

7、不认命,从10年流水线工人,到谷歌上班的程序媛,一位湖南妹子的励志故事

8、15张图看懂瞎忙和高效的区别

9、2T架构师学习资料干货分享

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务