Data API
概述
本文介绍 DATA 开发对接的相关内容。
数据接口认证登录
平台对外发布的接口服务(RESTful风格的Http服务)都需要进行认证登录,以保证数据的安全性。目前支持的认证方式只有一种:Bearer Token
。
对接准备
你需要从平台获得一对 client_id 和 client_secret,这是你的应用的唯一标识,用于获取 access_token。
身份认证
当你已经拥有 client_id 和 client_secret 时,你就可以通过以下步骤获取 access_token:
第一步:生成签名
签名的生成规则:client_id + 当前时间戳 + client_secret,然后进行 MD5 加密,加密后的 32 位大写字符串即为签名字符串。
-
签名生成示例:
- javascript
- c#
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/crypto-js.min.js"></script>
<script>
const client = "输入你的 client_id"
const secret = "输入你的 client_secret"
const timestamp = Math.ceil(+new Date() / 1000) // 当前时间戳(十位)
const plaintext = `${client}${timestamp}${secret}` // 签名明文
const signature = CryptoJS.MD5(plaintext).toString().toUpperCase(); // 得到签名
console.log(`签名结果:${signature}`)
</script>using System.Security.Cryptography;
var client = "输入你的 client_id";
var secret = "输入你的 client_secret";
var timestamp = DateTimeOffset.Now.ToUnixTimeMilliseconds() / 1000; // 当前时间戳(十位)
var plaintext = $"{client}{timestamp}{secret}"; // 签名明文
var signature = Convert.ToHexString(MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(plaintext))); // 得到签名
Console.WriteLine($"签名结果:{signature}");
第二步:发送认证请求
-
请求方式:POST
-
Content-Type:
application/json
-
请求参数:
参数名 类型 必填 描述 clientId 字符串 是 客户端(平台提供) time 数字 是 当前时间戳 signature 字符串 是 签名(通过client_id + time + client_secret,然后进行MD5加密,加密后的32位大写字符串即为签名字符串) -
请求示例:
curl --location 'https://localhost/api/TokenAuth/Authenticate' \
--header 'Content-Type: application/json' \
--data '{
"clientId": "openapi",
"time": 1724753509317,
"signature": "B9DBA02F6223468F16E8250D8F080CFF"
}'