/api/trans/vip/
输入参数
字段名类型必填参数描述备注请求翻译-8编码翻译源语言语言列表(可设置为auto)译文语言语言列表(不可设置为auto) ID可在管理控制台查看随机数
签名appid+q+salt+密钥 的MD5值以下字段仅开通了词典、TTS者需填写是否显示语音合成资源tts=0显示,tts=1不显示是否显示词典资源dict=0显示,dict=1不显示
请求方式: 可使用GET或POST方式,如使用POST方式,-Type请指定为:/x-www-form-
字符编码:统一采用UTF-8编码格式
query长度:为保证翻译质量,请将单次请求长度控制在 6000 bytes以内。(汉字约为2000个)
签名生成方法
签名是为了保证调用安全,使用MD5算法生成的一段字符串,生成的签名长度为 32位,签名中的英文字符均为小写格式
生成方法:
Step1. 将请求参数中的 APPID(appid), 翻译query(q, 注意为UTF-8编码), 随机数(salt), 以及平台分配的密钥(可在管理控制台查看) 按照 appid+q+salt+密钥 的顺序拼接得到字符串1。
Step2. 对字符串1做md5,得到32位小写的sign。
注:
1. 待翻译文本(q)需为UTF-8编码
2. 在生成签名拼接 appid+q+salt+密钥 字符串时,q不需要做URL ,在生成签名之后,发送HTTP请求之前才需要对要发送的待翻译文本字段q做URL
输出参数
返回的结果是
字段名类型描述备注源语言返回用户指定的语言,或自动检测的语言(源语言设为auto时)目标语言返回用户指定的目标语言 LIST翻译结果返回翻译结果,包含src 和 dst 字段。原文
译文
错误码仅当出现错误时显示以下字段仅开通词典、TTS资源者可见
原文格式,暂时无法指定发音
译文格式,暂时无法指定发音dict
中英词典资源返回中文或英文词典资源,包含音标、简明释义、例子等内容
接入举例
例如:将英文单词apple翻译成中文:
请求参数:
q=apple
from=en
to=zh
appid=20001(请替换为您的appid)
salt=(随机码)
平台分配的密钥:
生成签名sign:
Step1. 拼接字符串1:
拼接appid=20001+q=apple+salt=+密钥=得到字符串1:“”
Step2. 计算签名:(对字符串1做md5加密)
sign=md5(),得到sign=
拼接完整请求:
/api/trans/vip/?q=apple&from=en&to=zh&appid=20001&salt=&sign=
注:也可使用POST方式,如POST方式传送,-Type请指定为:/x-www-form-
语言列表
源语言语种不确定时可设置为 auto,目标语言语种不可设置为 auto。但对于非常用语种,语种自动检测可能存在误差。
错误码列表
当翻译结果无法正常返回时,请参考下表处理:
词典、语音合成资源
通用翻译API默认不提供词典、语音合成资源。如需使用请先进行企业认证,之后发送邮件至申请开通词典或语音合成资源,请注明您的使用场景。
资源开通后,API翻译结果中将默认附带dict(词典)和tts(语音合成)字段,仅对中英、英中互译有效。
词典资源:
词典分中英词典,由于每个词属性不同,词典结果不一定包含所有部分。
如源语言为中文,词典数据包括:拼音、词性、中文释义、英文释义、近义词等资源。
如源语言为英文,词典数据包括:英文释义、中文释义、音标、核心词汇类别等。
注:单个query需为词、词组或短语,如query为句子,则dict字段为空。
语音合成资源:
语音合成资源包含query原文、译文的发音,以mp3文件格式提供。
注:单个query内分段数超过3段,或字数超过500字,则tts字段为空。
各语言DEMO
PHP 版(点击下载)
JS 版(点击下载)
版(点击下载)
C 版(点击下载)
Java 版(点击下载)
C# 版(点击下载)
常见问题:如何在一次请求中翻译多个单词或者多段文本?
您可以在发送的字段q中用换行符(在多数编程语言中为转义符号 n。其中n是需要能被程序解析出来的换行符而不是字符串n,您可以将n用双引号包围 )或者回车换行来分隔要翻译的多个单词或者多段文本,这样您就能得到多段文本独立的翻译结果了。注意在发送请求之前需对q字段做URL !
2. 什么是URL ?
网络标准RFC 1738规定了URL中只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。如果您需要翻译的文本里面出现了不在该规定范围内的字符(比如中文),需要通过URL 将需要翻译的文本做URL编码才能发送HTTP请求。大部分编程语言都有现成的URL 函数,具体使用方法可以针对您使用的编程语言自行搜索。
3. 通用翻译API中,字符数量如何统计?
字符数量的统计以翻译的源语言字符长度为标准。一个汉字、一个英文字母、一个标点符号等均记为一个字符
4. 单次翻译请求是否有字符数限制?
为保证您的使用体验,请将单次翻译文本长度限定为6000字节以内(汉字约为2000个字符)。此外,高峰时期单次请求文本过长或将导致翻译超时。您可将query分多次请求。
5. 为什么我的请求总是返回错误码54001?
54001表示签名错误,请检查您的签名生成方法是否正确。
应该对 appid+q+salt+密钥 拼接成的字符串做MD5得到32位小写的sign。确保要翻译的文本q为UTF8格式。
注意在生成签名拼接 appid+q+salt+密钥 字符串时,q不需要做URL ,在生成签名之后,发送HTTP请求之前才需要对要发送的待翻译文本字段q做URL 。
如果您无法确认自己生成签名的结果是否正确,可以将您生成的签名结果和在/中生成的常规md5加密-32位小写签名结果对比。
6. 为什么我的请求会返回54003?
54003表示请求频率超限,请降低您的请求频率。
对于标准版服务,您的QPS(每秒请求量)=1,如需更大频率,请先进行身份认证,认证通过后可切换为高级版(适用于个人,QPS=10)或尊享版(适用于企业,QPS=100)
7. 如果我需要翻译整个网页,尖括号内的标签无法原样输出,怎么办?
翻译API会将传入的所有字符串当做可翻译字符,目前暂时无法区分哪些部分需原样保留,因此API不适合直接处理html文件。您可将html文件进行译前处理,抽取出待翻译文本,传入API翻译后再回填。
8. 是否支持对译文中的术语结果进行修改?
已认证用户可进入“管理控制台→ 我的术语库”维护术语列表,同时开通“干预通用翻译API结果”。开通后,您将可对译文中的术语翻译结果进行优化和修正。请注意:干预通用翻译API结果将可能导致翻译延时增长。因此在无需干预结果时可将开关关闭。
如术语干预功能无法满足您的需要,或有更多意见或建议,可联系
9. 我应该如何获取词典、语音合成资源结果?
接入文档与通用翻译API一致,接入流程上无变化。与未开通词典、语音合成服务相比,仅在返回结果处增加tts、dict字段,请注意辨别字段名称。
举例:
(1)未接入资源时,query=apple,语言方向为英到中,返回结果为:
{“from”:”en”,”to”:”zh”,””:[{“src”:”apple”,”dst”:”苹果“}]}
接入词典、语音合成资源后,返回结果为:
{“from”:”en”,”to”:”zh”,””:[{“src”:”apple”,”dst”:”苹果”,””:”https:///api/tts/.mp3″,””:”https:///api/tts/.mp3″,”dict”:”{“lang”:”1″,””:{“”:{“”:”apple”,”from”:””,””:[“苹果”],””:{“”:[“”]},”tags”:{“core”:[“高考”,”考研”],”other”:[“”]},””:[{“ph_en”:”ˈæpl”,”ph_am”:”ˈæpl”,”parts”:[{“part”:”n.”,”means”:[“苹果”]}],””:””}]}}}”}]}
(2)未接入资源时,query=中国,语言方向为中到英,返回结果为:
{“from”:”zh”,”to”:”en”,””:[{“src”:”中国”,”dst”:”China”}]}
接入词典、语音合成资源后,返回结果为:
{“from”:”zh”,”to”:”en”,””:[{“src”:”中国”,”dst”:”China”,””:”https:///api/tts/.mp3″,””:”https:///api/tts/.mp3″,”dict”:”{“lang”:”0″,””:{“”:{“”:[{“”:”zhōng guó”,”parts”:[{“”:””,”means”:[{“text”:”China”,”part”:”n.”,””:”China”,”means”:[“中国”]},{“text”:”Sino-“,”part”:”comb.”,””:”Sino-“,”means”:[“中国的”,”中国人(的)”]}]}]}],””:”中国”,”from”:””,””:[“China”,”Sino-“]}}}”}]}
10. Q:我已开通词典、语音合成资源,但不想在结果中呈现,应该怎么办?
如需隐藏词典、语音合成信息,可在拼接请求参数时附加”&dict=1&tts=1″,例如,如仅需隐藏tts字段,完整请求为:
/api/trans/vip/?q=apple&from=en&to=zh&appid=20001&salt=&sign=&tts=1