Translator 3.0: Diller

Translator'ın diğer işlemleri tarafından desteklenen dil kümesini alır.

İstek URL’si

Şuraya bir GET isteği gönderin:

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

Bkz. Sanal Ağ Translator hizmeti için destek seçili ağ ve özel uç nokta yapılandırması ve desteği.

İstek parametreleri

Sorgu dizesinde geçirilen istek parametreleri şunlardır:

Sorgu parametreleri Description
api-sürümü Gerekli parametre

İstemci tarafından istenen API sürümü. Değer olmalıdır 3.0.
scope İsteğe bağlı parametre.

Döndürülecek dil grubunu tanımlayan adların virgülle ayrılmış listesi. İzin verilen grup adları şunlardır: translation, transliterationve dictionary. Kapsam belirtilmemişse, tüm gruplar döndürülür ve bu da geçirmeyle scope=translation,transliteration,dictionaryeşdeğerdir.

Bkz.yanıt gövdesi.

İstek üst bilgileri şunlardır:

Üst Bilgiler Description
Accept-Language İsteğe bağlı istek üst bilgisi.

Kullanıcı arabirimi dizelerinde kullanılacak dil. Yanıttaki alanlardan bazıları dillerin adları veya bölgelerin adlarıdır. Bu adların döndürüldiği dili tanımlamak için bu parametreyi kullanın. Dil, iyi biçimlendirilmiş bir BCP 47 dil etiketi sağlanarak belirtilir. Örneğin, Fransızca adlar istemek için değerini fr kullanın veya Geleneksel Çince'de ad istemek için değerini zh-Hant kullanın.
Hedef dil belirtilmediğinde veya yerelleştirme kullanılamadığında adlar İngilizce dilinde sağlanır.
X-ClientTraceId İsteğe bağlı istek üst bilgisi.
İsteği benzersiz olarak tanımlamak için istemci tarafından oluşturulan GUID.

Dil kaynaklarını almak için kimlik doğrulaması gerekmez.

Yanıt gövdesi

İstemci, hangi dil gruplarının scope ilgilendiğini tanımlamak için sorgu parametresini kullanır.

  • scope=translation metinleri bir dilden başka bir dile çevirmek için desteklenen diller sağlar;

  • scope=transliteration bir dildeki metni bir betikten başka bir betike dönüştürmeye yönelik özellikler sağlar;

  • scope=dictionary , işlemlerin veri döndüreceği Dictionary dil çiftleri sağlar.

İstemci, virgülle ayrılmış bir ad listesi belirterek aynı anda birkaç grubu alabilir. Örneğin, scope=translation,transliteration,dictionary tüm gruplar için desteklenen dilleri döndürür.

Başarılı bir yanıt, istenen her grup için bir özelliği olan bir JSON nesnesidir:

{
    "translation": {
        //... set of languages supported to translate text (scope=translation)
    },
    "transliteration": {
        //... set of languages supported to convert between scripts (scope=transliteration)
    },
    "dictionary": {
        //... set of languages supported for alternative translations and examples (scope=dictionary)
    }
}

Her özelliğin değeri aşağıdaki gibidir.

  • translation Özellik

    özelliğinin translation değeri, (anahtar, değer) çiftlerinin sözlüğüdür. Her anahtar bir BCP 47 dil etiketidir. Anahtar, metnin çevrilebileceği veya çevrilebileceği bir dili tanımlar. Anahtarla ilişkili değer, dili açıklayan özelliklere sahip bir JSON nesnesidir:

    • name: Üst bilgi aracılığıyla Accept-Language istenen yerel ayarda dilin adını görüntüleyin.

    • nativeName: Bu dilin yerel ayarında dilin adını görüntüleyin.

    • dir: Sağdan sola veya soldan sağa diller ltr için olan yönrtl.

    Örnek olarak:

    {
      "translation": {
        ...
        "fr": {
          "name": "French",
          "nativeName": "Français",
          "dir": "ltr"
        },
        ...
      }
    }
    
  • transliteration Özellik

    özelliğinin transliteration değeri, (anahtar, değer) çiftlerinin sözlüğüdür. Her anahtar bir BCP 47 dil etiketidir. Anahtar, metnin bir betikten başka bir betike dönüştürülebileceği bir dili tanımlar. Anahtarla ilişkili değer, dili ve desteklenen betiklerini açıklayan özelliklere sahip bir JSON nesnesidir:

    • name: Üst bilgi aracılığıyla Accept-Language istenen yerel ayarda dilin adını görüntüleyin.

    • nativeName: Bu dilin yerel ayarında dilin adını görüntüleyin.

    • scripts: Dönüştürülecek betiklerin listesi. Listenin her öğesinin scripts özellikleri vardır:

      • code: Betiği tanımlayan kod.

      • name: Üst bilgi aracılığıyla Accept-Language istenen yerel ayarda betiğin görünen adı.

      • nativeName: Dilin yerel ayarında dilin adını görüntüler.

      • dir: Sağdan sola veya soldan sağa diller ltr için olan yönrtl.

      • toScripts: Metni dönüştürmek için kullanılabilecek betiklerin listesi. Listenin toScripts her öğesi, daha önce açıklandığı gibi , name, nativeNameve dir özelliklerine codesahiptir.

    Örnek olarak:

    {
      "transliteration": {
        ...
        "ja": {
          "name": "Japanese",
          "nativeName": "日本語",
          "scripts": [
            {
              "code": "Jpan",
              "name": "Japanese",
              "nativeName": "日本語",
              "dir": "ltr",
              "toScripts": [
                {
                  "code": "Latn",
                  "name": "Latin",
                  "nativeName": "ラテン語",
                  "dir": "ltr"
                }
              ]
            },
            {
              "code": "Latn",
              "name": "Latin",
              "nativeName": "ラテン語",
              "dir": "ltr",
              "toScripts": [
                {
                  "code": "Jpan",
                  "name": "Japanese",
                  "nativeName": "日本語",
                  "dir": "ltr"
                }
              ]
            }
          ]
        },
        ...
      }
    }
    
  • dictionary Özellik

    özelliğinin dictionary değeri, (anahtar, değer) çiftlerinin sözlüğüdür. Her anahtar bir BCP 47 dil etiketidir. Anahtar, alternatif çevirilerin ve arka çevirilerin kullanılabildiği bir dili tanımlar. değeri, kaynak dili ve hedef dilleri kullanılabilir çevirilerle açıklayan bir JSON nesnesidir:

    • name: Üst bilgi aracılığıyla Accept-Language istenen yerel ayarda kaynak dilin görünen adı.

    • nativeName: Bu dilin yerel ayarında dilin adını görüntüleyin.

    • dir: Sağdan sola veya soldan sağa diller ltr için olan yönrtl.

    • translations: Alternatif çevirileri olan dillerin listesi ve kaynak dilde ifade edilen sorgu örnekleri. Listenin her öğesinin translations özellikleri vardır:

      • name: Üst bilgi aracılığıyla Accept-Language istenen yerel ayarda hedef dilin adını görüntüleyin.

      • nativeName: Hedef dilin yerel ayarında hedef dilin adını görüntüler.

      • dir: Sağdan sola veya soldan sağa diller ltr için olan yönrtl.

      • code: Hedef dili tanımlayan dil kodu.

    Örnek olarak:

    "es": {
      "name": "Spanish",
      "nativeName": "Español",
      "dir": "ltr",
      "translations": [
        {
          "name": "English",
          "nativeName": "English",
          "dir": "ltr",
          "code": "en"
        }
      ]
    },
    

API sürümünde değişiklik yapılmadan yanıt nesnesinin yapısı değişmez. Api'nin aynı sürümü için, Microsoft Translator hizmetleri tarafından desteklenen dillerin listesini sürekli genişletdiğinden, kullanılabilir dillerin listesi zaman içinde değişebilir.

Desteklenen dillerin listesi sık sık değişmez. Ağ bant genişliğinden tasarruf etmek ve yanıt hızını artırmak için istemci uygulamasının dil kaynaklarını ve karşılık gelen varlık etiketini (ETag önbelleğe almayı göz önünde bulundurması gerekir. Ardından istemci uygulaması düzenli aralıklarla (örneğin, 24 saatte bir) hizmeti sorgulayabilir ve desteklenen en son dil kümesini getirebilir. Geçerli ETag değeri bir If-None-Match üst bilgi alanına geçirmek, hizmetin yanıtı iyileştirmesine olanak tanır. Kaynak değiştirilmediyse, hizmet 304 durum kodunu ve boş bir yanıt gövdesini döndürür.

Yanıt üst bilgileri

Üst Bilgiler Description
Etag Desteklenen dillerin istenen grupları için varlık etiketinin geçerli değeri. Sonraki istekleri daha verimli hale getirmek için, istemci değeri bir If-None-Match üst bilgi alanına gönderebilirETag.
X-RequestId İsteği tanımlamak için hizmet tarafından oluşturulan değer. Sorun giderme amacıyla kullanılır.

Yanıt durum kodları

Bir isteğin döndürdüğü olası HTTP durum kodları aşağıdadır.

Durum Kodu Description
200 Başarılı.
304 İstek üst bilgileri If-None-Matchtarafından belirtilen sürümden bu yana kaynak değiştirilmedi.
400 Sorgu parametrelerinden biri eksik veya geçersiz. Yeniden denemeden önce doğru istek parametreleri.
429 İstemci istek sınırlarını aştığı için sunucu isteği reddetti.
500 Beklenmeyen bir hata oluştu. Hata devam ederse şunu bildirin: hatanın tarihi ve saati, yanıt üst bilgisinden istek tanımlayıcısı ve istek üst bilgisinden X-RequestIdX-ClientTraceIdistemci tanımlayıcısı.
503 Sunucu geçici olarak kullanılamıyor. İsteği yeniden deneyin. Hata devam ederse şunu bildirin: hatanın tarihi ve saati, yanıt üst bilgisinden istek tanımlayıcısı ve istek üst bilgisinden X-RequestIdX-ClientTraceIdistemci tanımlayıcısı.

Hata oluşursa istek bir JSON hata yanıtı da döndürür. Hata kodu, hatayı daha fazla kategorilere ayırmak için 3 basamaklı HTTP durum kodunu ve ardından 3 basamaklı bir sayıyı birleştiren 6 basamaklı bir sayıdır. Yaygın hata kodları v3 Çevirmen başvuru sayfasında bulunabilir.

Örnekler

Aşağıdaki örnekte, metin çevirisi için desteklenen dillerin nasıl alınıyor olduğu gösterilmektedir.

curl "https://api.cognitive.microsofttranslator.com/languages?api-version=3.0&scope=translation"