语种识别
更新时间:
识别文本语种,返回语言代码和原文。
GET / POSThttps://translate.ilivedata.com/api/v1/detect
接入前,请在云上曲率官网注册账号、创建企业,并在控制台选择「实时文本翻译」服务创建应用,获取项目编号和服务密钥。如需开通更多服务,可在控制台「总览」页面操作。
请求参数
请求头
Header
值
说明
Accept
application/json;charset=UTF-8
响应格式
Authorization
—
签名值,计算方式见下文「请求签名」
请求字段
参数
类型
必需
说明
q
String
必需
待识别的原文文本, 文本为不超过 1024 个字符的 UTF-8 编码字符串
appId
String
必需
项目或应用的唯一标识符。在官网注册账号及公司,并在控制台创建实时翻译项目后,即可得到项目的 appId
timeStamp
String
必需
请求发起时的 UTC 时间,采用 W3C 格式,例如 2026-10-12T02:30:00Z。实际请求需使用当前时间。
请求示例
以下为 GET 请求示例,appId、timeStamp 和签名需替换为实际值。
GET /api/v1/detect?q=hello%20world&appId=1234&timeStamp=2026-10-12T02%3A30%3A00Z HTTP/1.1
Host: translate.ilivedata.com
Accept: application/json;charset=UTF-8
Authorization: <计算得到的签名>
请求签名
使用项目的 secretKey 计算签名,将结果放入请求头 Authorization。签名不一致或项目无权限时返回 HTTP 401。
构造参数字符串
- 按参数名称排序。
- 按 RFC 3986 对参数名和值进行 URL 编码:字母、数字、
-、_、.、~ 保持不变,其他字符使用大写十六进制百分号编码;UTF-8 多字节字符逐字节编码。
- 使用
= 连接参数名和值(空值也保留 =),使用 & 连接各参数,得到 CanonicalizedQueryString。
使用表单 URL 编码库时,将编码结果中的 + 替换为 %20、* 替换为 %2A、%7E 替换为 ~。空格必须编码为 %20。
构造签名字符串
StringToSign = HTTPMethod + "\n" +
HostHeaderInLowercase + "\n" +
HTTPRequestURI + "\n" +
CanonicalizedQueryString
签名参数
值
HTTPMethod
实际请求方法:GET 或 POST
HostHeaderInLowercase
translate.ilivedata.com
HTTPRequestURI
/api/v1/detect
HTTPRequestURI 不包含查询参数。
计算 Authorization
以 secretKey 为密钥,使用 HMAC-SHA256 对 StringToSign 计算摘要,再将摘要进行 Base64 编码,作为 Authorization 请求头的值。
签名示例
以上 GET 请求排序并编码后的参数字符串:
appId=1234&q=hello%20world&timeStamp=2026-10-12T02%3A30%3A00Z
对应的 StringToSign 如下,各行之间使用换行符 \n:
GET
translate.ilivedata.com
/api/v1/detect
appId=1234&q=hello%20world&timeStamp=2026-10-12T02%3A30%3A00Z
使用实际项目密钥计算签名后,填入 Authorization。实际请求需使用当前 UTC 时间,并据此重新计算签名。
HTTP 响应
Content-Type: application/json;charset=UTF-8
响应字段
字段
类型
说明
errorCode
Number
错误码,0 表示成功。
errorMessage
String
错误消息,失败时返回。
language
String
识别出的语言代码。
text
String
原文文本。
成功示例(HTTP 200)
{
"errorCode": 0,
"language": "en",
"text": "Hello World!"
}
失败示例(HTTP 404)
{
"errorCode": 1006,
"errorMessage": "Not Found"
}
缺少参数(HTTP 400)
{
"errorCode": 2000,
"errorMessage": "Missing Parameter"
}
识别文本语种,返回语言代码和原文。
GET / POST
https://translate.ilivedata.com/api/v1/detect接入前,请在云上曲率官网注册账号、创建企业,并在控制台选择「实时文本翻译」服务创建应用,获取项目编号和服务密钥。如需开通更多服务,可在控制台「总览」页面操作。
请求参数
请求头
| Header | 值 | 说明 |
|---|---|---|
Accept |
application/json;charset=UTF-8 |
响应格式 |
Authorization |
— | 签名值,计算方式见下文「请求签名」 |
请求字段
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
q |
String |
必需 | 待识别的原文文本, 文本为不超过 1024 个字符的 UTF-8 编码字符串 |
appId |
String |
必需 | 项目或应用的唯一标识符。在官网注册账号及公司,并在控制台创建实时翻译项目后,即可得到项目的 appId |
timeStamp |
String |
必需 | 请求发起时的 UTC 时间,采用 W3C 格式,例如 2026-10-12T02:30:00Z。实际请求需使用当前时间。 |
请求示例
以下为 GET 请求示例,appId、timeStamp 和签名需替换为实际值。
GET /api/v1/detect?q=hello%20world&appId=1234&timeStamp=2026-10-12T02%3A30%3A00Z HTTP/1.1
Host: translate.ilivedata.com
Accept: application/json;charset=UTF-8
Authorization: <计算得到的签名>
请求签名
使用项目的 secretKey 计算签名,将结果放入请求头 Authorization。签名不一致或项目无权限时返回 HTTP 401。
构造参数字符串
- 按参数名称排序。
- 按 RFC 3986 对参数名和值进行 URL 编码:字母、数字、
-、_、.、~保持不变,其他字符使用大写十六进制百分号编码;UTF-8 多字节字符逐字节编码。 - 使用
=连接参数名和值(空值也保留=),使用&连接各参数,得到CanonicalizedQueryString。
使用表单 URL 编码库时,将编码结果中的 + 替换为 %20、* 替换为 %2A、%7E 替换为 ~。空格必须编码为 %20。
构造签名字符串
StringToSign = HTTPMethod + "\n" +
HostHeaderInLowercase + "\n" +
HTTPRequestURI + "\n" +
CanonicalizedQueryString
| 签名参数 | 值 |
|---|---|
HTTPMethod |
实际请求方法:GET 或 POST |
HostHeaderInLowercase |
translate.ilivedata.com |
HTTPRequestURI |
/api/v1/detect |
HTTPRequestURI 不包含查询参数。
计算 Authorization
以 secretKey 为密钥,使用 HMAC-SHA256 对 StringToSign 计算摘要,再将摘要进行 Base64 编码,作为 Authorization 请求头的值。
签名示例
以上 GET 请求排序并编码后的参数字符串:
appId=1234&q=hello%20world&timeStamp=2026-10-12T02%3A30%3A00Z
对应的 StringToSign 如下,各行之间使用换行符 \n:
GET
translate.ilivedata.com
/api/v1/detect
appId=1234&q=hello%20world&timeStamp=2026-10-12T02%3A30%3A00Z
使用实际项目密钥计算签名后,填入 Authorization。实际请求需使用当前 UTC 时间,并据此重新计算签名。
HTTP 响应
Content-Type: application/json;charset=UTF-8
响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
errorCode |
Number |
错误码,0 表示成功。 |
errorMessage |
String |
错误消息,失败时返回。 |
language |
String |
识别出的语言代码。 |
text |
String |
原文文本。 |
成功示例(HTTP 200)
{
"errorCode": 0,
"language": "en",
"text": "Hello World!"
}
失败示例(HTTP 404)
{
"errorCode": 1006,
"errorMessage": "Not Found"
}
缺少参数(HTTP 400)
{
"errorCode": 2000,
"errorMessage": "Missing Parameter"
}