API认证

在调用API时,需要通过令牌(AccessToken)对用户权限进行认证。

步骤1:创建AccessKey

AccessKey分为两种,一种是是用户AccessKey,可以用来管理跟此用户相关的数据,另外一种是管理员API,可以管理所有管理员能操作的数据。

用户AccessKey

从v0.2.1开始,如果你还没有用户AccessKey,则需要在”平台用户” – 用户”详情” – “API AccessKey”中创建。

商业版的用户可以自行在用户平台”访问控制”页面中点击”创建AccessKey”,然后创建一个AccessKey。

管理员AccessKey

从v0.2.3开始,如果你还没有管理员AccessKey,则需要在”系统用户” – 用户”详情” – “API AccessKey”中创建。

步骤2:调用API获取AccessToken

接口地址

/APIAccessTokenService/getAPIAccessToken

请求方法

POST。

请求参数

{
    "type": "admin",
    "accessKeyId": "zr9cmR42AEZxRyIV",
    "accessKey": "2w5p5NSZZuplUPsfPMzM7dFmTrI7xyja"
}
其中

  • type - 如果是用户(即平台用户)AccessKey,则值为 user;如果是管理员(即系统用户)AccessKey,则值为 admin
  • accessKeyIdaccessKey 换成你在步骤1中创建的AccessKey对应的数据。

响应结果

{
   "code": 200,
   "data": {
      "token": "IKNSMufZ1vDiXp5rSd9QR01m1174Oum5sah4amWFgbRb7lOKjuk62Spl7hgcazctzGhGG7jPgfmYUPojulC0FK5cLbrj8n7kxW7BtSawH9gWW14IWOzBY6UcpyXQndFu",
      "expiresAt": 1609686945
   },
   "message": "ok"
}
其中:

  • code - 如果是 200 表示成功,否则表示失败
  • token - 就是AccessToken,可以在别的接口中通过HTTP Header X-Edge-Access-Token 传入;
  • expiresAt - 过期时间戳,默认为N个小时,过期后请及时重新获取。

多次调用此接口会导致先前获取的AccessToken失效。

CURL示例

对管理员来说,可以使用curl命令调用接口获得Token:

curl -XPOST "http://192.168.1.6:8004/APIAccessTokenService/getAPIAccessToken" -d '{
   "type":"admin",
   "accessKeyId":"zr9cmR42AEZxRyIV", 
   "accessKey":"2w5p5NSZZuplUPsfPMzM7dFmTrI7xyja"
}'
你需要把API地址、accessKeyId、accessKey换成你自己的。

对平台用户来说,可以使用curl命令调用接口获得Token:

curl -XPOST "http://192.168.1.6:8004/APIAccessTokenService/getAPIAccessToken" -d '{
   "type":"user",
   "accessKeyId":"JOvsyXIFqkQbh5kl", 
   "accessKey":"t0RY8YO3R58VbJJNp0RqKw9KWNpObwtE"
}'
你需要把API地址、accessKeyId、accessKey换成你自己的。

步骤3:调用API

API列表 找到要调用的API,然后以POST方式调用 /服务/方法 组合后的URL,在Header中加入 X-Edge-Access-Token ,值为步骤2中的生成的AccessToken接口,具体可以参考 API调用概述

GoEdge文档