API说明
- 授权认证,调用接口需要将 Appid,CurTime, Param 和 CheckSum 信息放在 HTTP 请求头中;
- 接口统一为 UTF-8 编码;
- 接口支持 http 和 https;
- 请求方式为POST。
授权认证
在调用所有业务接口时,都需要在 Http Request Header 中配置以下参数用于授权认证:
参数 | 格式 | 说明 | 必须 |
---|---|---|---|
X-Appid | string | 讯飞开放平台注册申请应用的应用ID(appid) | 是 |
X-CurTime | string | 当前UTC时间戳,从1970年1月1日0点0 分0 秒开始到现在的秒数 | 是 |
X-Param | string | 相关参数JSON串经Base64编码后的字符串,见各接口详细说明 | 是 |
X-CheckSum | string | 令牌,计算方法:MD5(apiKey + curTime + param),三个值拼接的字符串,进行MD5哈希计算(32位小写),其中apiKey由讯飞提供,调用方管理。 | 是 |
注:
- apiKey:接口密钥,由讯飞开放平台提供,调用方注意保管,如泄露,可联系讯飞技术人员重置;
- checkSum 有效期:出于安全性考虑,每个 checkSum 的有效期为 5 分钟(用 curTime 计算),同时 curTime 要与标准时间同步,否则,时间相差太大,服务端会直接认为 curTime 无效;
- BASE64 编码采用 MIME 格式,字符包括大小写字母各26个,加上10个数字,和加号 + ,斜杠 / ,一共64个字符。
checkSum 生成示例:
String apiKey="abcd1234";
String curTime="1502607694";
String param="eyAiYXVmIjogImF1ZGlvL0wxNjtyYXR...";
String checkSum=MD5(apiKey+curTime+param);
IP白名单
在调用所有业务接口时,授权认证通过后,检查调用方 ip 是否在讯飞开放平台配置的 ip白名单 中。存在通过,否则拒绝提供服务。 注:
- IP白名单可在控制台应用管理卡片上编辑,五分钟左右生效;
- IP白名单最多可设置5个,更多的需求可联系技术人员;
- 拒绝提供服务返回值:
{
"code":"10105",
"desc":"illegal access|illegal client_ip",
"data":"",
"sid":"xxxxxx"
}