Время прочтения: 3 мин.

Крупные компании вносят большой вклад в развитие инфраструктуры интернета. Они предоставляют доступ к своим сервисам и позволяют сторонним разработчикам использовать их. Существует множество таких сервисов (https://yandex.ru/dev/). Сегодня я расскажу про сервис Яндекс.Переводчик и как получить к нему доступ, используя API на примере с использованием языка C#.

Цель подключения сервиса через API:

Во время разработки приложения для поиска объявлений, я столкнулся с тем, что необходимо было внедрить функцию – выбор пользователем интересующего города или иного населенного пункта России. Проблема заключалась в том, что в базах данных, с которыми приложение должно взаимодействовать, все города записаны на латинице, и никаких других единых идентификаторов нет. Так как список населенных пунктов России весьма крупный – статически присваивать им англоязычное название было слишком трудоемкой задачей. Поэтому я решил внедрить в приложение автоматический переводчик, который воспринимал бы города, введенные пользователем на русском языке, и выдавал латинский вариант написания города, который соответствовал значению в базах данных.

API (Application Programming Interface), предоставляемое Яндексом, состоит из различных инструментов, которые позволяют использовать сервис в своих целях. API сервиса Яндекс.Переводчика позволяет переводить слова в своих приложениях.

Разберем на примере:

  1. Необходимо получить API-ключ сервиса Яндекс.Переводчик. Для этого нужно зарегистрировать аккаунт на Яндекс и перейти по ссылке. Ключ создается по простому нажатию кнопки.
Рисунок 1 – личный кабинет в Яндекс.Переводчик

2. Ключ представляет собой набор символов (зачеркнут).

Рисунок 2 – Api-ключ подключения к Яндекс.Переводчик
Рисунок 3 – Список дополнительно импортируемы библиотек

3. Создадим проект простого приложения в Visual Studio C#. Импортируем необходимые библиотеки.

4. Создадим форму с двумя полями ввода и кнопкой.

Рисунок 4 – созданная форма для переводчика

5. Код двух классов для перевода

Рисунок 5 – Код для перевода с помощью API

Здесь переменная request содержит строку для подключения к сервису перевода. Она состоит из адреса сервиса, API-ключа (зачеркнут), текста для перевода, и языка перевода. Запрос отправляется на сервер, после чего мы получаем ответ в переменной response. Ответ представляет собой структуру в формате JSON, поэтому необходимо ее конвертировать обратно. Для этого создан класс Translation, в переменной text которого будет содержаться переведенный текст.

6. Вызываем написанный код при нажатии на кнопку формы.

Рисунок 6 – обработчик события нажатия на кнопку

7. Результат

Рисунок 7- результат работы реализованного переводчика

В итоге, мы создали приложение, которое связывается с сервисом Яндекс.Переводчик и может переводить любой введенный текст на выбранный язык.