标识一段文本的语言。
请求的 URL
POST
将请求发送到:
https://api.translator.azure.cn/detect?api-version=3.0
请参阅“虚拟网络支持 翻译器服务”所选网络和专用终结点配置和支持。
请求参数
在查询字符串上传递的请求参数包括:
查询参数 | Description |
---|---|
API版本 (api-version) |
必需参数。 客户端请求的 API 版本。 值必须是 3.0 。 |
请求标头包括:
Headers | Description |
---|---|
身份验证标头 |
所需的请求标头。 请参阅 可用的身份验证选项。 |
Content-Type |
所需的请求标头。 指定有效负载的内容类型。 可能的值为: application/json |
内容长度 |
可选。 请求正文的长度。 |
X-ClientTraceId |
可选。 客户端生成的 GUID,用于唯一标识请求。 如果使用名为 < |
请求主体
请求正文是 JSON 数组。 每个数组元素都是一个 JSON 对象,其中包含名为 <Text
。 语言自动检测更适用于较长的输入文本。 示例请求正文如下所示:
[
{ "Text": "Ich würde wirklich gerne Ihr Auto ein paar Mal um den Block fahren." }
]
以下限制适用:
- 数组最多可以有 100 个元素。
- 请求中包含的整个文本不能超过 50,000 个字符,包括空格。
响应体
成功的响应是一个 JSON 数组,输入数组中的每个字符串都有一个结果。 结果对象包含以下属性:
language
:检测到的语言的代码。score
:指示结果置信度的浮点值。 分数介于零和 1 和低分数之间,表示置信度较低。isTranslationSupported
:如果检测到的语言是文本翻译支持的语言之一,则为 true 的布尔值。isTransliterationSupported
:一个布尔值,如果检测到的语言是受音译支持的语言之一,则为 true。alternatives
:其他可能语言的数组。 数组的每个元素都是以下属性的另一个对象:language
、score
、isTranslationSupported
和isTransliterationSupported
。
JSON 响应示例为:
[
{
"language": "de",
"score": 1.0,
"isTranslationSupported": true,
"isTransliterationSupported": false
}
]
响应标头
Headers | Description |
---|---|
X-RequestId | 服务生成的值用于标识请求,并用于故障排除目的。 |
响应状态代码
下面是请求可能返回的 HTTP 状态代码。
状态代码 | Description |
---|---|
200 | 成功。 |
400 | 查询参数之一缺失或无效。 在重试之前更正请求参数。 |
401 | 无法对请求进行身份验证。 检查凭据是否已指定且有效。 |
403 | 请求未获授权。 检查详细信息错误消息。 此代码通常表示使用试用版订阅提供的所有免费翻译。 |
429 | 服务器拒绝了请求,因为客户端超出了请求限制。 |
500 | 发生意外错误。 如果错误仍然存在,请报告失败的日期和时间、响应标头 X-RequestId 的请求标识符和请求标头 X-ClientTraceId 中的客户端标识符。 |
503 | 服务器暂时不可用。 重试请求。 如果错误仍然存在,请报告失败的日期和时间、响应标头 X-RequestId 的请求标识符和请求标头 X-ClientTraceId 中的客户端标识符。 |
如果发生错误,请求将返回 JSON 错误响应。 错误代码是一个 6 位数的数字,它组合了 3 位 HTTP 状态代码,后跟一个 3 位数字,以进一步对错误进行分类。 可以在 v3 翻译器参考页上找到常见的错误代码。
例子
以下示例演示如何检索文本翻译支持的语言。
curl -X POST "https://api.translator.azure.cn/detect?api-version=3.0" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json" -d "[{'Text':'What language is this text written in?'}]"