您不能選擇超過 %s 個話題 話題必須以字母或數字為開頭,可包含連接號 ('-') 且最長為 35 個字
 
 
 
 
 
 

20 行
706 B

  1. import 'dart:convert';
  2. import 'package:crypto/crypto.dart';
  3. class XunFeiUtils {
  4. // 使用SHA-256算法计算HMAC
  5. static String hmacSha256(String apiSecret, String signatureOrigin) {
  6. // 将 apiSecret 和 signatureOrigin 转换为 UTF-8 编码的字节
  7. var key = utf8.encode(apiSecret);
  8. var message = utf8.encode(signatureOrigin);
  9. // 使用 HMAC-SHA256 算法生成签名
  10. var hmac = Hmac(sha256, key); // 初始化 HMAC(使用 SHA256)
  11. var signatureSha = hmac.convert(message); // 计算签名
  12. // 将生成的签名进行 Base64 编码
  13. String base64Signature = base64.encode(signatureSha.bytes);
  14. return base64Signature; // 返回 Base64 编码后的签名
  15. }
  16. }