1. 接口说明

  • 授权认证,调用接口需要将 Appid,CurTime, Param 和 CheckSum 信息放在 HTTP 请求头中;
  • 接口统一为 UTF-8 编码;
  • 接口支持 http 和 https;
  • 请求方式为POST。
  • 需配置IP白名单,详细请参照 白名单

2. 接口调用流程

  • 通过接口密钥基于MD5计算签名,将签名以及其他参数放在Http Request Header中,详见下方 授权认证
  • 将音频或图片数据放在Http Request Body中,详见各接口的详细说明 。
  • 向服务器端发送Http请求后,接收服务器端的返回结果,返回结果详见各接口的详细说明。

3. 授权认证

在调用所有业务接口时,都需要在 Http Request Header 中配置以下参数用于授权认证:

参数格式说明必须
X-Appidstring讯飞开放平台注册申请应用的应用ID(appid)
X-CurTimestring当前UTC时间戳,从1970年1月1日0点0 分0 秒开始到现在的秒数
X-Paramstring相关参数JSON串经Base64编码后的字符串,见各接口详细说明
X-CheckSumstring令牌,计算方法:MD5(apiKey + curTime + param),三个值拼接的字符串,进行MD5哈希计算(32位小写),其中apiKey由讯飞提供,调用方管理。

注:

  • apiKey:接口密钥,由讯飞开放平台提供,在控制台添加相应服务后即可获取,调用方注意保管,如泄露,可 提交工单 联系讯飞技术人员重置;
  • checkSum 有效期:出于安全性考虑,每个 checkSum 的有效期为 5 分钟(用 curTime 计算),同时 curTime 要与标准时间同步,否则,时间相差太大,服务端会直接认为 curTime 无效;
  • BASE64 编码采用 MIME 格式,字符包括大小写字母各26个,加上10个数字,和加号 + ,斜杠 / ,一共64个字符。
    checkSum 生成示例:
  1. String apiKey="abcd1234";
  2. String curTime="1502607694";
  3. String param="eyAiYXVmIjogImF1ZGlvL0wxNjtyYXR...";
  4. String checkSum=MD5(apiKey+curTime+param);

4. 白名单

在调用所有业务接口时,授权认证通过后,服务端会检查调用方ip是否在讯飞开放平台配置的ip白名单中,对于没有配置到白名单中的IP发来的请求,服务端会拒绝服务。注:

  • IP白名单可在控制台应用管理卡片上编辑,五分钟左右生效;
  • IP白名单最多可设置5个;
  • 如果服务器返回结果如下所示,则表示由于未配置IP白名单或配置有误,服务端拒绝服务。解决办法请参考 IP白名单问题汇总
  1. {
  2. "code":"10105",
  3. "desc":"illegal access|illegal client_ip",
  4. "data":"",
  5. "sid":"xxxxxx"
  6. }

Copyright © iflytek.com 2018 all right reserved,powered by Gitbook该文件修订时间:2019-05-07 07:12:51