翻譯工具 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
:其他可能語言的陣列。 陣列的每個元素都是下列屬性的另一個物件:language
、score
、isTranslationSupported
和isTransliterationSupported
。
JSON 回應範例如下:
[
{
"language": "de",
"score": 1.0,
"isTranslationSupported": true,
"isTransliterationSupported": false
}
]
回應標頭
標題 | 描述 |
---|---|
X-RequestId | 服務所產生的值,用來識別要求,並用於疑難解答目的。 |
回應狀態代碼
以下是要求傳回的可能 HTTP 狀態碼。
狀態碼 | 描述 |
---|---|
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.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?'}]"