翻译V1
业务场景
- 把玩家发言翻译到指定的语言
注意事项
- 时间戳与北京时间差距为 ± 5分钟
- 若翻译后有特殊字符,会自动转义返回
需翻译的文案:我和测试在聊天
接口返回的文案:I'm chatting with the test
对应真实的文案:I'm chatting with the test
- 若需要换行符,将换行符用urlencode一下,翻译完再将encode的换行符decode一下
需翻译的文案:测试换行\n测试换行
urlencode: 测试换行%5Cn测试换行
接口返回的文案:Test line break%5CnTest line break
urldecode: Test line break\nTest line break
对应真实的文案:Test line break\nTest line break
请求地址
https://cpapi.iyagame.com/v1/chat/translate
接口说明
- 协议:HTTPS
- 方式:POST
- ContentType:application/json;charset=utf-8
- 请求报文:
字段 | 类型 | 必需 | 参与签名 | 说明 |
---|---|---|---|---|
appId | long | 是 | 是 | SDK的appId |
timestamp | long | 是 | 是 | 毫秒时间戳 |
sign | string | 是 | 是 | 签名 |
language | string | 是 | 是 | 目标语言,取值见 语言 |
content | string | 是 | 是 | 内容 |
- 响应报文:
字段 | 类型 | 必需 | 说明 |
---|---|---|---|
code | int | 是 | 响应状态码 |
msg | string | 是 | 响应描述 |
data | object | 是 | 结果数据 |
data字段
字段 | 类型 | 必需 | 说明 |
---|---|---|---|
result | int | 是 | 检查结果 0:通过,1:建议审核,2:不通过 |
content | string | 是 | 文本校验时返回,返回的文本会将屏蔽词屏蔽,其他内容正常 |
请求示例
{
"appId": 10070,
"timestamp": 1742214770340,
"language": "en",
"content": "测试换行%5Cn测试换行",
"sign": "a46582ada8af397af4aa4334b8f1d40b"
}
响应示例
{
"code": 0,
"msg": "Success",
"data": {
"content": "Test line break%5CnTest line break"
},
"meta": {
"tid": "43052b74"
}
}
签名规则
- 参数名区分大小写,按 ASCII 码从小到大排序(字典序)
- 只有值为 null 和 参数名不参与签名 的键值对,才不参与签名
- 使用 URL 键值对的格式,拼接成待签名字符串,签名 key 在最后拼接,再进行MD5计算
- 将生成的签名与入参 sign 值作校验,验签忽略大小写
调试示例
import cn.hutool.crypto.SecureUtil;
public class chatExample {
public static void main(String[] args) {
Integer appId = 10070;
Long timestamp = 1742214770340L;
String language = "en";
String appKey = "AaBbCcDdEeFfGgHh";
String sign = SecureUtil.md5("appId=" + appId + "&language=" + language + "×tamp=" + timestamp + "&key=" + appKey);
System.out.printf("翻译签名:%s", sign);
}
}
状态码
状态码 | 说明 |
---|---|
0 | 成功 |
-1 | 失败,常规性错误 |
10101 | 查询基础信息失败 |
10102 | 缺少游戏信息 |
10103 | 请求参数全部为空 |
10104 | 缺少签名sign |
10105 | 签名不正确 |
10106 | timestamp已过期 |
10301 | 翻译失败,具体信息见msg |
10302 | 翻译服务请求超时,可重试 |
附录
语言 | ISO-639-1代码 |
---|---|
南非荷兰语 | af |
阿尔巴尼亚语 | sq |
阿姆哈拉语 | am |
阿拉伯语 | ar |
亚美尼亚语 | hy |
阿塞拜疆语 | az |
巴斯克语 | eu |
白俄罗斯语 | be |
孟加拉语 | bn |
波斯尼亚语 | bs |
保加利亚语 | bg |
加泰罗尼亚语 | ca |
宿务语 | ceb |
中文(简体) | zh-cn 或 zh |
中文(繁体) | zh-tw |
科西嘉语 | co |
克罗地亚语 | hr |
捷克语 | cs |
丹麦语 | da |
荷兰语 | nl |
英语 | en |
世界语 | eo |
爱沙尼亚语 | et |
芬兰语 | fi |
法语 | fr |
弗里斯兰语 | fy |
加利西亚语 | gl |
格鲁吉亚语 | ka |
德语 | de |
希腊语 | el |
古吉拉特语 | gu |
海地克里奥尔语 | ht |
豪萨语 | ha |
夏威夷语 | haw |
希伯来语 | he 或 iw |
印地语 | hi |
苗语 | hmn |
匈牙利语 | hu |
冰岛语 | is |
伊博语 | ig |
印度尼西亚语 | id |
爱尔兰语 | ga |
意大利语 | it |
日语 | ja |
爪哇语 | jv |
卡纳达语 | kn |
哈萨克语 | kk |
高棉语 | km |
卢旺达语 | rw |
韩语 | ko |
库尔德语 | ku |
吉尔吉斯语 | ky |
老挝语 | lo |
拉丁文 | la |
拉脱维亚语 | lv |
立陶宛语 | lt |
卢森堡语 | lb |
马其顿语 | mk |
马尔加什语 | mg |
马来语 | ms |
马拉雅拉姆文 | ml |
马耳他语 | mt |
毛利语 | mi |
马拉地语 | mr |
蒙古文 | mn |
缅甸语 | my |
尼泊尔语 | ne |
挪威语 | no |
尼杨扎语(齐切瓦语) | ny |
奥里亚语(奥里亚) | or |
普什图语 | ps |
波斯语 | fa |
波兰语 | pl |
葡萄牙语(葡萄牙、巴西) | pt |
旁遮普语 | pa |
罗马尼亚语 | ro |
俄语 | ru |
萨摩亚语 | sm |
苏格兰盖尔语 | gd |
塞尔维亚语 | sr |
塞索托语 | st |
修纳语 | sn |
信德语 | sd |
僧伽罗语 | si |
斯洛伐克语 | sk |
斯洛文尼亚语 | sl |
索马里语 | so |
西班牙语 | es |
巽他语 | su |
斯瓦希里语 | sw |
瑞典语 | sv |
塔加路语(菲律宾语) | tl |
塔吉克语 | tg |
泰米尔语 | ta |
鞑靼语 | tt |
泰卢固语 | te |
泰文 | th |
土耳其语 | tr |
土库曼语 | tk |
乌克兰语 | uk |
乌尔都语 | ur |
维吾尔语 | ug |
乌兹别克语 | uz |
越南语 | vi |
威尔士语 | cy |
班图语 | xh |
意第绪语 | yi |
约鲁巴语 | yo |
祖鲁语 | zu |