Notification概览
概述
通知的内容为领科系统的events。
客户通过以下3种方式可以收到event通知
1.
2.
3.
Header结构
参数 | 必须 | 类型 | 示例值 | 说明 | 是否加入签名计算 |
---|---|---|---|---|---|
x-lf-notification-version | 必须 | String | 1.0 | Notification api的版本标识 | 是 |
x-lf-algo | 必须 | String | HMAC-SHA1 | 算法标识,目前支持HMAC-SHA1。以后可以扩展, md5, sha256,等,默认为hmac-sha1 | 是 |
x-lf-signature | 必须 | String | {keyId}/{signature} | 签名。有可能存在多对业务密钥。需要传keyid | 是 |
x-lf-timestamp | 必须 | String | 1683524066000 | 发送的时间戳,毫秒 | 是 |
算法
接收Notification需要独立的Key。
HMAC-SHA1
计算signature步骤
1.
2.
2.1 POST 的body做JSON String encode, top-level key按字典排序(即数组不排序)=> sorted_message
2.2 加上头信息 {x-lf-notification-version}:{x-lf-algo}:{x-lf-timestamp}
例:
3.
4.
5.
例:
验证signature步骤
1.
2.
2.1 POST 的body做JSON String encode, top-level key按字典排序(即数组不排序)=> sorted_message
2.2 加上头信息 {x-lf-notification-version}:{x-lf-algo}:{x-lf-timestamp}
例:
3.
注:key_hex指Cube页面中开发者模块的notification key value位置如下图所示
4.
5.
签名代码示例
重发机制
1.
2.
3.
修改于 2025-03-06 09:55:13