翻译器 3.0:检测

标识一段文本的语言。

请求的 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,用于唯一标识请求。 如果使用名为 <a0/> 的查询参数在查询字符串中包含跟踪 ID,则可以省略此标头。

请求主体

请求正文是 JSON 数组。 每个数组元素都是一个 JSON 对象,其中包含名为 <a0/> 的字符串属性。 语言检测应用于属性的值 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:其他可能语言的数组。 数组的每个元素都是以下属性的另一个对象: languagescoreisTranslationSupportedisTransliterationSupported

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?'}]"