如何使用 reportportal API 生成令牌

How can I generate token using reportportal API

我正在寻找一种在 reportportal 上使用 login/password 生成令牌的方法。 很确定,应该有一种使用 API 调用的方法。我只是找不到它。

鉴于(项目名称、用户、密码),我应该得到一个令牌,我可以用它来进行其他 API 调用。

谢谢。

获取API令牌

在获得API令牌之前,您必须生成它。

如果它已经生成(您已使用此用户登录),此端点将 return 您现有的 API 令牌:

GET /sso/me/apitoken

示例:

curl -X GET --header 'Accept: application/json' --header 'Authorization: bearer 4f73871b-e477-4f49-b1bd-805b24201fe0' 'http://web.demo.reportportal.io/uat/sso/me/apitoken'

回复:

{
  "access_token": "b1debc0a-d47d-492f-aa7c-3e2e0fb96332",
  "token_type": "bearer",
  "scope": "api"
}

注意,第一个(curl)请求中的承载范围为 UI,响应中的承载范围为 API

  • UI 令牌 根据服务器配置和用户会话的 TimeToLive 过期。
  • API token 有无穷无尽的 TTL

**如果GET请求return你出错了,那么你需要生成token。

生成API令牌

POST sso/me/apitoken

示例:

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: bearer 4f73871b-e477-4f49-b1bd-805b24201fe0' 'http://web.demo.reportportal.io/uat/sso/me/apitoken?authenticated=true'

回复:

{
  "access_token": "4e76e31e-0250-4e5e-ba66-90105dd014bb",
  "token_type": "bearer",
  "scope": "api"
}

(!) 代币是 public。在演示实例 http://web.demo.reportportal.io

从 public 帐户使用

写一个post到:

/uat/sso/oauth/token?grant_type=password&password=***password***&username=***username***

使用凭据(用户名:ui 和密码:uiman)设置基本身份验证以获取范围 UI 的访问令牌,使用此令牌获取 apitoken。