共用方式為


翻譯工具 3.0:偵測

識別文字片段的語言。

要求 URL

POST 要求傳送至:

https://api.cognitive.microsofttranslator.com/detect?api-version=3.0

請參閱 虛擬網絡 翻譯工具服務選取的網路和私人端點組態和支援。

要求參數

在查詢字串上傳遞的要求參數如下:

查詢參數 描述
api-version 必要參數
用戶端要求的 API 版本。 值必須為 3.0

要求標頭包括:

標題 描述
驗證標頭 必要的要求標頭
請參閱 可用的驗證選項。
內容-類型 必要的要求標頭
指定承載的內容類型。 可能的值為:application/json
Content-Length 選擇性
要求本文的長度。
X-ClientTraceId 選擇性
用於識別唯一要求的 GUID,由用戶端產生。 如果您使用名為 ClientTraceId的查詢參數,在查詢字串中包含追蹤標識碼,則可以省略此標頭。

要求本文

要求的主體是 JSON 陣列。 每個陣列元素都是 JSON 物件,具有名為 Text的字串屬性。 語言偵測會套用至 屬性的值 Text 。 語言自動偵測效果較適合較長的輸入文字。 範例要求本文如下所示:

[
    { "Text": "Ich würde wirklich gerne Ihr Auto ein paar Mal um den Block fahren." }
]

適用下列限制:

  • 陣列最多可以有100個專案。
  • 要求中包含的完整文字不能超過 50,000 個字元,包括空格。

回應本文

成功的回應是 JSON 陣列,輸入數位中的每個字串都有一個結果。 結果物件包含下列屬性:

  • language:偵測到語言的程序代碼。

  • score:指出結果信賴度的浮點數。 分數介於零和一和低分數之間,表示信賴度較低。

  • isTranslationSupported:布爾值,如果偵測到的語言是文字翻譯所支持的語言之一,則為 true。

  • isTransliterationSupported:布爾值,如果偵測到的語言是支援音譯的語言之一,則為 true。

  • alternatives:其他可能語言的陣列。 陣列的每個元素都是下列屬性的另一個物件: languagescoreisTranslationSupportedisTransliterationSupported

JSON 回應範例如下:

[

    {

        "language": "de",

        "score": 1.0,

        "isTranslationSupported": true,

        "isTransliterationSupported": false

    }

]

回應標頭

標題 描述
X-RequestId 服務所產生的值,用來識別要求,並用於疑難解答目的。

回應狀態代碼

以下是要求傳回的可能 HTTP 狀態碼。

狀態碼 描述
200 成功。
400 其中一個查詢參數遺失或無效。 重試之前,請先更正要求參數。
401 無法驗證要求。 檢查是否已指定認證且有效。
403 要求未獲授權。 檢查詳細數據錯誤訊息。 此程式代碼通常表示會使用試用版訂用帳戶提供的所有免費翻譯。
429 伺服器因為客戶端超過要求限制而拒絕要求。
500 發生未預期的錯誤。 如果錯誤持續發生,請報告失敗的日期和時間、回應標頭的要求標識碼,以及來自要求標頭X-RequestIdX-ClientTraceId的用戶端標識符。
503 伺服器暫時無法使用。 重試要求。 如果錯誤持續發生,請報告失敗的日期和時間、回應標頭的要求標識碼,以及來自要求標頭X-RequestIdX-ClientTraceId的用戶端標識符。

如果發生錯誤,要求會傳回 JSON 錯誤回應。 錯誤碼是6位數的數字,結合3位數 HTTP狀態代碼,後面接著3位數的數位,以進一步分類錯誤。 v3 翻譯工具參考頁面上可找到常見的錯誤碼。

範例

下列範例示範如何擷取文字翻譯支持的語言。

curl -X POST "https://api.cognitive.microsofttranslator.com/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?'}]"