图片展示

服务热线:400-018-6667

您好! 请登录 注册
搜索

GitLab之使用GraphQL

发表时间: 2023-03-20 10:19:59

作者: 上海卫戍信息技术有限公司

来源: 上海卫戍信息技术有限公司公众号

浏览:

GraphQL是Gitlab的一种api查询语句,它能实现REST API的所有功能,并且在官方预期是最优先使用GraphQL。使用GraphQL有两种方式Command line和GraphiQL,即命令行和图形化。

需要先为用户创建access token,请求示例:

GraphiQL是一个图形化的web console,web url为:https:///-/graphql-explorer


GraphQL 两种模式

  • 1、Queries:用于数据检索


  • 2、 mutations:用于创建,更新,删除数据

field即为期望被查询资源所要返回的数据条目。


最后得到GraphQL为:

这条GraphQL的意思为:查询“policy”这个组,返回结果包括这个组的id,组名,和下面的项目名。效果如下:


怎么查看一个资源有哪些field

这里以vulnerabilityCreate为例,因为这个资源涉及到的属性比较多,可以用作典型。

查询一个资源必须先获取它的id,GraphQL中使用的资源id是global id,global id的组成是:gid://gitlab//需要注意这里的resource_type名称首字母为大写。

比如一个id为4的组的global id就为gid://gitlab/Group/4,一个id为1的vulnerability的global id就为:gid://gitlab/Vulnerability/1

假设现在要查询id为1的vulnerability,我们首先需要在graphql reference 1中找到创建对应资源的方法这里对应的就是vulnerabilityCreate。





然后在GraphQL中以field{subfield}的形式组合即可。

GraphQL示例:

解决方案


性能测试

安全测试

联系我们


联系方式

在线留言

智能地图

页面版权所有 -  上海卫戍信息技术有限公司  |  Copyright - 2020 All Rights Reserved  | 沪ICP备20200610号   | 沪公网安备 31010402009815号

在线咨询

您好,请点击在线客服进行在线沟通!

联系方式
热线电话
400-018-6667
E-mail地址
zhangl@wesure365.net
手机号码
13817779904
扫一扫二维码
二维码
添加微信好友,详细了解产品
使用企业微信
“扫一扫”加入群聊
复制成功
添加微信好友,详细了解产品
我知道了
沪ICP备20020610号