一种中心化接口文档管理平台的制作方法

文档序号:19158070发布日期:2019-11-16 01:03阅读:197来源:国知局
一种中心化接口文档管理平台的制作方法

本发明涉及大数据、接口文档技术领域,更具体的说是涉及一种中心化接口文档管理平台。



背景技术:

在前后端分离的情况下,前端和后端的唯一关联就是接口,那么描述这个接口的接口文档让调用者快速上手就显得相当重要,在和其他公司对接接口的时候也会用到,团队协作中更新了接口如何告知使用这个接口的人?各个项目中的接口文档、不同版本的接口文档、给不同人员的接口文档等等,这些情况如果接口文档直接存在电脑中去区分管理那么是十分困难的,所以我们迫切的希望有接口文档管理平台帮我们统一管理这些接口文档。在现有的接口文档管理平台中,在接口测试、接口分享等方面还有所欠缺,产业链发展并不成熟,不能形成一个完整的接口管理平台生态圈。

因此,如何提供一种易于使用、生态完整的中心化接口文档管理平台是本领域技术人员亟需解决的问题。



技术实现要素:

有鉴于此,本发明提供了一种中心化接口文档管理平台将在现有的先进技术基础上,针对现有技术的缺点,提出有效的解决方法并实行,将中心化接口文档管理应用技术覆盖率扩大,让更多的企业可应用中心化接口文档管理技术,让对接更容易,让使用更简单,更加规范化,保证接口文档的安全的同时保证便捷的分享接口文档,形成一个较为完善的接口文档管理生态圈。

为了实现上述目的,本发明提供如下技术方案:

一种中心化接口文档管理平台,包括:项目管理模块、社交管理模块、接口管理模块、分享管理模块、通知管理模块、客户端管理模块、个人中心模块,以及客户端接口管理模块、接口测试模块、授权管理模块;

其中,所述接口管理模块分别与所述项目管理模块和社交管理连接,将接口管理过程中产生的接口数据交给项目管理模块进行划分、权限的分配给社交管理模块下的用户;

所述项目管理模块与所述分享管理模块连接,将项目管理下的接口在固定的时间内按项目或类别或具体接口根据不同的分享格式分享给他人;

所述通知管理模块将系统中触发的各种事件通知给需要的用户;

所述个人中心模块将系统中产生的数据以及用户所拥有的资源汇总;

所述客户端接口测试模块分别与平台的接口管理模块、项目管理模块、通知管理模块连接,将客户端在使用过程中产生的数据交给平台的接口管理模块;将平台的接口按照接口所属的项目环境进行测试,将测试结果发送给平台的通知管理告知相关用户;

所述客户端的授权管理模块与平台的授权管理模块连接,在平台给客户端授权以后,客户端产生的数据才是平台所认可的。

优选的,在上述的一种去中心的接口文档管理平台中,项目管理模块包括:项目成员单元、项目角色单元、成员权限单元、项目环境单元、项目资源单元;项目成员单元存储从用户社交管理的好友邀请加入的用户;项目角色单元是对项目权限的抽象,给用户分配权限;项目环境单元是项目所运行的项目地址,接口测试的接口都在在这个环境下运行;项目资源单元存储项目下定义的服务器地址、账号密码、ip、readme相关信息。

优选的,在上述的一种去中心的接口文档管理平台中,社交管理模块包括:添加好友单元、好友分组单元、名片分享单元、消息提醒单元,通过添加好友单元添加好友,并根据用户账号或者名片的方式设置分组,名片分享单元生成名片用于分组或添加好友;消息提醒单元能够提醒系统消息和好友消息。

优选的,在上述的一种去中心的接口文档管理平台中,接口管理模块包括:接口导入单元、历史接口单元,用户将接口按照接口规范通过接口导入单元倒入到系统中,并设置接口所属类目、接口期望,当接口被修改后在历史接口单元中备份,定期删除。

优选的,在上述的一种去中心的接口文档管理平台中,分享管理模块将系统中的接口在一定的时效内按照固定的分享格式选择一种分享方式分享给他人。

优选的,在上述的一种去中心的接口文档管理平台中,客户端管理模块包括:项目分配单元、权限管理单元、授权管理单元,项目分配单元将部分项目分配给客户端,并通过权限管理单元设置客户端所拥有的权限,然后授权管理单元给客户端授权期间信任客户端。

优选的,在上述的一种去中心的接口文档管理平台中,客户端接口管理模块包括:客户端接口导入单元,将用户的接口导入到系统中,设置类目并选择一个拥有权限的项目,在与平台接口管理同步的时候导入到相应的模块下。

优选的,在上述的一种去中心的接口文档管理平台中,客户端接口测试模块包括:测试报告生产单元,客户端将按照用户选择的测试内容在所属的测试环境下按照选择的测试方式进行测试生成测试报告。

优选的,在上述的一种去中心的接口文档管理平台中,客户端的授权管理模块获取授权、更新授权、删除授权;在客户端中登录服务端账号点击确认授权,添加授权后需要服务端分配项目、权限后方可使用;在客户端使用过程中,服务端的授权过期,在客户端中登录服务端账号重新获取授权;客户端主动删除服务端的授权,然后重新绑定其他的服务端授权。

经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种中心化接口文档管理平台将在现有的先进技术基础上,针对现有技术的缺点,提出有效的解决方法并实行,将中心化接口文档管理应用技术覆盖率扩大,让更多的企业可应用中心化接口文档管理技术,让对接更容易,让使用更简单,更加规范化,保证接口文档的安全的同时保证便捷的分享接口文档,形成一个较为完善的接口文档管理生态圈。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1附图为本发明的原理框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种中心化接口文档管理平台,将中心化接口文档管理应用技术覆盖率扩大,让更多的企业可应用中心化接口文档管理技术,让对接更容易,让使用更简单,更加规范化,保证接口文档的安全的同时保证便捷的分享接口文档,形成一个较为完善的接口文档管理生态圈。

一种中心化接口文档管理平台,包括:项目管理模块、社交管理模块、接口管理模块、分享管理模块、通知管理模块、客户端管理模块、个人中心模块,以及客户端接口管理模块、接口测试模块、授权管理模块;

其中,接口管理模块分别与项目管理模块和社交管理连接,将接口管理过程中产生的接口数据交给项目管理模块进行划分、权限的分配给社交管理模块下的用户;

项目管理模块与分享管理模块连接,将项目管理下的接口在固定的时间内按项目或类别或具体接口根据不同的分享格式分享给他人;

通知管理模块将系统中触发的各种事件通知给需要的用户;

个人中心模块将系统中产生的数据以及用户所拥有的资源汇总;

客户端接口测试模块分别与平台的接口管理模块、项目管理模块、通知管理模块连接,将客户端在使用过程中产生的数据交给平台的接口管理模块;将平台的接口按照接口所属的项目环境进行测试,将测试结果发送给平台的通知管理告知相关用户;

客户端的授权管理模块与平台的授权管理模块连接,在平台给客户端授权以后,客户端产生的数据才是平台所认可的。

为了进一步优化上述技术方案,项目管理模块包括:项目成员单元、项目角色单元、成员权限单元、项目环境单元、项目资源单元;项目成员单元存储从用户社交管理的好友邀请加入的用户;项目角色单元是对项目权限的抽象,给用户分配权限;项目环境单元是项目所运行的项目地址,接口测试的接口都在在这个环境下运行;项目资源单元存储项目下定义的服务器地址、账号密码、ip、readme相关信息。

为了进一步优化上述技术方案,社交管理模块包括:添加好友单元、好友分组单元、名片分享单元、消息提醒单元,通过添加好友单元添加好友,并根据用户账号或者名片的方式设置分组,名片分享单元生成名片用于分组或添加好友;消息提醒单元能够提醒系统消息和好友消息。

为了进一步优化上述技术方案,接口管理模块包括:接口导入单元、历史接口单元,用户将接口按照接口规范通过接口导入单元倒入到系统中,并设置接口所属类目、接口期望,当接口被修改后在历史接口单元中备份,定期删除。

为了进一步优化上述技术方案,分享管理模块将系统中的接口在一定的时效内按照固定的分享格式选择一种分享方式分享给他人。

为了进一步优化上述技术方案,客户端管理模块包括:项目分配单元、权限管理单元、授权管理单元,项目分配单元将部分项目分配给客户端,并通过权限管理单元设置客户端所拥有的权限,然后授权管理单元给客户端授权期间信任客户端。

为了进一步优化上述技术方案,客户端接口管理模块包括:客户端接口导入单元,将用户的接口导入到系统中,设置类目并选择一个拥有权限的项目,在与平台接口管理同步的时候导入到相应的模块下。

为了进一步优化上述技术方案,客户端接口测试模块包括:测试报告生产单元,客户端将按照用户选择的测试内容在所属的测试环境下按照选择的测试方式进行测试生成测试报告。

为了进一步优化上述技术方案,客户端的授权管理模块获取授权、更新授权、删除授权;在客户端中登录服务端账号点击确认授权,添加授权后需要服务端分配项目、权限后方可使用;在客户端使用过程中,服务端的授权过期,在客户端中登录服务端账号重新获取授权;客户端主动删除服务端的授权,然后重新绑定其他的服务端授权。

项目管理模块:项目成员可以邀请社交管理中的好友加入项目,设置好友在该项目中担当的角色(采用rbac的设计),为好友设置相应的权限,待好友同意以后正式成为项目成员,也可以直接邀请非好友成为项目成员,但是不推荐,为了便于用户注册快速使用平台,应该提供当下比较流行的社交软件第三方登录(如:qq、微信)

项目角色单元管理项目角色(应当只有项目创建人可以操作),为每个角色定义他们所拥有的权限,设置这个角色的作用域是项目中的还是全局的,如果是项目中的那么这个角色只在这个项目中有效,如果设置为全局的,那么在其他的项目中也可以使用这个角色为项目成员分配权限,也可以将一个项目中的角色修改为全局的角色,到达设置一次处处使用的目的,也可以达到高度的自定义,如果不想自定义也可以直接使用系统中提供的几种默认角色,管理员(项目下的所有权限)、开发人员(项目下除了测试相关的所有权限)、测试人员(项目下除了修改接口相关的所有权限);

成员权限单元:

查看权限指的是这个项目成员拥有这个项目下的哪些接口的查看权限,默认为全部,可以按接口类目分配部分接口予以查看

编辑权限指的是这个项目成员拥有这个项目下的哪些接口的编辑权限,默认为全部,可以按接口类目分配部分接口予以编辑,分配了编辑权限的接口自动拥有相应的查看权限,可以借助这个特性快速分配用户权限,达到部分接口可查看不可编辑的效果

测试权限指的是这个项目成员拥有这个项目下的哪些接口的测试权限,默认为全部,可以按接口类目分配部分接口予以编辑,分配了测试权限的接口自动拥有相应的查看权限,可以借助这个特性快速分配用户权限,达到部分接口可查看不可测试的效果,因为部分接口比较敏感所以需要开放测试权限后才可以进行测试避免不必要的出现错误的可能性

分享权限指的是这个项目成员拥有这个项目下的哪些接口的分享权限,默认为全部,可以按接口类目分配部分接口予以分享,分配了分享权限的接口自动拥有相应的查看权限,可以借助这个特性快速分配用户权限,达到部分接口可查看不可分享的效果,获取到接口分享权限的用户可以分享给该用户的好友(可以选择该好友时候可编辑,前提是该用户自己拥有编辑权限,默认只有查看权限)

通知权限指的是这个项目成员拥有这个项目下的哪些接口的通知权限,默认为全部,可以按接口类目分配部分接口予以通知,分配了通知权限的接口自动拥有相应的查看权限,可以借助这个特性快速分配用户权限,达到部分接口可查看不可通知的效果,获取到接口通知权限的用户可在接口该接口发生改变的时候第一时间得到通知,或者是某个接口类目下的接口发生改变或者添加接口的时候得到通知,通知方式为该用户设置的接受通知的方式,默认为系统通知

项目环境单元:

正式环境,可以有多个,用户自行命名添加备注便于区分,正式环境通常为一个外网服务器访问地址,所有的接口在进行测试的时候都会在该环境下进行;

沙箱环境是指系统集成mock测试根据用户定义的接口期望生成测试数据,返回给调用者,便于开发阶段前后端同时进行,在项目开发过程中,如果后端接口还没有开发完成,前端可以使用平台提供的mock服务获取到模拟数据并行开发,切换的时候前端只需将域从平台的mock服务地址切换的项目环境即可;

客户端是指系统借助客户端打通内网测试时,客户端自行指定的服务器地址,不允许使用项目中设定的项目环境;

社交管理模块:

添加好友单元指的是,用户在使用该平台时需要添加好友加入到项目中,添加好友提供通过使用用户号码或者通过个人名片扫一扫的方式添加好友,也可以通过地图发现附近使用该平台的用户进行批量添加好友,待对方同意用户添加好友的请求后正式建立好友关系

好友分组单元当好友比较多的时候或者参加的项目比较多加的好友比较杂的时候就需要为好友设置分组,便于用户管理好友

名片分享单元可以根据当前帐号生成个人名片二维码,方便添加好友,同时也可以设置个性化一点的名片体现出自己的与众不同

消息提醒单元用来接受系统在运行中产生的消息,比如添加好友的消息,权限变动的消息,接口变动的消息,温馨提示等。

接口管理模块:

内置接口规范一个接口文档应当有以下内容:接口版本、接口说明、联系人;非必须,没有的时候尽量提供默认值如:v1.0,无,当前用户名称;请求uri、请求方式;必须,没有请求uri和请求方式是无法请求到接口的;请求参数、参数说明必须,不然接口是没有可读性的,请求示例非必须;响应参数、参数说明必须,不然接口是没有可读性的,响应示例非必须;必须,json、表单、文件等,返回数据json、页面等;非必须,一个复杂的接口应该给予调用示例;

接口类目对现有接口进行分类,通过类目快速定位接口方便用户检索,也可以对类目进行操作达到批量操作接口的目的,在使用第三方工具导入的时候应该可能的创建默认的接口类目(可以在配置项中关闭),接口类目的删除不会影响现有的接口

接口期望,期望类型可以分为全局期望、项目期望、类目期望、接口期望四种类型,可以对请求的响应头、http状态码、数据格式、参数过滤、响应时间、ip等进行过滤,可以开启mock脚本实现更加精准的期望判断

接口导入单元:导入方法有手动录入和第三方导入;手动录入在线根据接口规范录入接口或者根据接口分享出去的json文件直接导入到系统中;第三方导入,对市场是常见的接口文档提供集成导入的方式,常见的有swagger2、showdoc、rap2、postman,在导入的时候尽可能的提供默认值;

历史接口单元每当对一个接口进行改变的时候,都会将改变之前的接口存到历史记录中然后将改变之后的接口保存,可以根据历史记录进行恢复。

分享管理模块:

分享方式包括:二维码,将接口文档的数据生成一个访问链接,可以控制这个链接的有效时间,过期后删除链接,根据链接和用户图片生成二维码信息。链接,将接口文档的数据生成一个访问链接,可以控制这个链接的有效时间,过期后删除链接。口令,将接口文档的数据生成一个访问链接,可以控制这个链接的有效时间,过期后删除链接,再根据链接生成一个对应的口令,可以根据口令找到链接,在系统操作时检测用户剪切板中是否含有有效的口令,如果有,根据口令找到链接获取链接中的信息提示给用户是否需要跳转到对应的页面,跳转后删除剪切板中的口令信息;

分享格式包括:在接口进行分享的时候有五种格式供与选择,静态html、word、pdf、markdown、json;html将分享的接口按照接口当前所属的类目根据模板生成可直接访问的静态html页面;word将分享的接口按照接口当前所属的类目根据模板按照接口规范生成可直接访问的word文档;pdf将分享的接口按照接口当前所属的类目根据模板按照接口规范生成可直接访问的pdf页面;markdown将分享的接口按照接口当前所属的类目根据模板按照接口规范生成可直接访问的静态markdown页面;json将分享的接口按照接口当前所属的类目根据模板按照接口规范生成可直接导入到系统中的json文件;

分享时效包括:一定时间内,因为接口的分享的方式都是基于链接的方式,所以让链接失效即可达到目的,在生成链接的时候设定好过期时间(默认15天),到期后的链接都不再可以访问,然后由系统定时删除过期的分享链接信息。永久,因为接口的分享的方式都是基于链接的方式,所以让链接失效即可达到目的,在生成链接的时候不设置过期时间就可以让这个链接一直有效可以访问,也可以手动删除这些永久的链接。

通知管理模块:

通知类型:成员变动,在项目成员发生变动的时候触发通知,找到项目成员中拥有的成员变动的通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理;权限变动,在项目成员权限发生变动的时候触发通知,找到项目成员中拥有成员权限变动通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理;接口新增,在接口新增的时候触发通知,找到项目成员中拥有接口新增通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理;接口修改,在接口修改的时候触发通知,找到项目成员中拥有接口修改通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理;接口测试:在接口测试的时候触发通知,找到项目成员中拥有接口测试通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理;接口分享在接口被分享的时候触发通知,找到项目成员中拥有接口分享通知权限的用户,然后根据需要的用户自己设置的接受通知的方式来通知用户,最后触发钩子(进行一个回调便于实现一些个性化操作)如果没有则不做处理。

通知方式:系统,在服务端的我的消息中发送系统消息告知用户;邮件,根据用户在个人中心绑定的邮箱发送邮件;短信,根据用户在个人中心绑定的手机号发送短信;回调可以写一段http地址,触发后进行回调,可以实现个性化通知方式;通知钩子可以设置管理钩子,选择一个项目然后设置通知类型然后设置回调url,在触发该通知类型的时候会调用设置的url;

个人中心模块:对用户当前所拥有的资源做一个统筹

项目→(项目数量、项目中接口数量、项目中成员数量)

接口→(接口数量、未测试接口数量、测试未通过接口数量)

分享→(分享给好友的接口数量、好友分享给我的接口数量)

通知→(我订阅的通知类型、接收通知的方式)

客户端管理模块:

项目分配单元给客户端分配可以使用的项目,客户端只能在服务端为客户端分配项目之后客户端才可以进行操作;

权限管理单元默认客户端只有读取接口数据、和发送测试报告的权限(用来打通内网测试),经过服务端的允许后,客户端可以直接添加和更新接口(用来上传内网接口数据);

授权管理模块:

每个客户端需要经过服务端的授权(使用oauth2授权)后方可使用(需要定期更新授权),如果没有授权,在客户端触发请求服务端的接口的时候提需要用户登录服务端的账号点击确认授权后方可继续操作,服务端可以随时取消客户端的授权拒绝客户端的请求;

接口类目,对现有接口进行分类,通过类目快速定位接口方便用户检索,也可以对类目进行操作达到批量操作接口的目的,在使用第三方工具导入的时候应该可能的创建默认的接口类目(可以在配置项中关闭),接口类目的删除不会影响现有的接口客户端接口导入单元在服务端允许之后,客户端可以导入接口到服务端;手动录入,在线根据接口规范录入接口或者根据接口分享出去的json文件直接导入到系统中;第三方导入,对市场是常见的接口文档提供集成导入的方式,常见的有swagger2、showdoc、rap2、postman,在导入的时候尽可能的提供默认值

接口测试模块:测试内容可以选择按接口测试、按类目测试、按项目测试三种方式;

测试方式可以分为手动测试、自动测试,手动测试需要用户手动去点击来触发测试,自动测试指定是可以按照规则定时的来测试接口生成测试报告(比如每天晚上12点执行测试);

测试环境,默认所有的接口测试都将在服务端的项目环境中执行,如果项目环境为客户端时客户端必须自己设置接口环境,客户端也可以主动选择自己设置是否使用服务端中的项目环境,接口测试的时候会根据接口期望中定义的规则来判断响应的数据是否有效,无效的则作为失败;

接口在执行完测试以后会将测试的结果(是否成功,为什么不成功,是哪里不符合期望)告知服务端,服务端根据测试结果生成测试报告发送给订阅的用户

授权管理模块

获取授权:

在客户端中登录服务端账号点击确认授权,添加授权后需要服务端分配项目、权限后方可使用,授权默认七天,七天后需要重新获取授权;

更新授权:

在客户端使用过程中,服务端的授权过期了,需要在客户端中登录服务端账号点击确认授权重新获取授权,七天后需要重新获取授权

删除授权:

客户端可以主动删除服务端的授权,然后重新绑定其他的服务端授权。

rbac基于角色的权限访问控制(role-basedaccesscontrol)

基于角色的权限访问控制(role-basedaccesscontrol)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注。在rbac中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。角色与角色的关系可以建立起来以囊括更广泛的客观情况。

mock测试

mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法

oauth2授权

oauth2.0是oauth协议的延续版本,但不向后兼容oauth2.0即完全废止了oauth1.0。oauth2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和http服务商之间的被批准的交互动作代表用户,要么允许第三方应用代表用户获得访问的权限。同时为web应用,桌面应用和手机,和起居室设备提供专门的认证流程。2012年10月,oauth2.0协议正式发布为rfc6749。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1