API签名校验工具


签名规则(参数详见HIFIVE音乐开放平台API文档)

  • 1.使用请求参数构造规范化的请求字符串。
    • a.按照参数名称的字典顺序对请求中所有的请求参数进行排序。
    • b.将编码后的参数名称和值用英文等号(=)进行连接。
    • c.将等号连接得到的参数组合按步骤 1.a 排好的顺序依次使用“&”符号连接,即得到规范化请求字符串。
  • 2.按照规定顺序用空格拼接请求类型和公共参数构造字符串。(请求类型、公共参数按照此顺序拼接:GET/POST、X-HF-Action、X-HF-Version、X-HF-AppId、X-HF-Nonce、X-HF-ClientId、'HF3-HMAC-SHA1'、X-HF-Timestamp)
  • 3.将步骤 2 得到的字符串进行base64编码。
  • 4.将步骤 1 中构造的规范化字符串拼接步骤 3 得到的base64编码,即得到待签名的字符串(如果请求参数为空,则直接跳过改步骤)。
  • 5.得到签名值(Signature)。
    • a.将上一步骤得到的字符串进行base64编码。
    • b.对步骤a的结果,通过hmacSha1 摘要算法签名(摘要算法参考hmacSha1(String base64, String serverCode),加密Key为serverCode,此示例中使用的serverCode=242d1e834d47d5f9,在做HMAC-SHA1哈希后,不要将得到的字节数组转换成字符串)。
    • c.将上一步 b 的结果,做md5Hex处理,所得结果全部转为大写,即得到签名值(Signature)。
Method
公共参数

Params


步骤1计算结果:

步骤2计算结果:

步骤3计算结果:

步骤4计算结果:

步骤5签名结果: