Servicio de Traducción a Ingles
Lo que conseguiremos con este servicio es facilitar a usuarios de distintos idiomas poder traducirlo al idioma ingles. Nuestro servicio detecta el idioma y así poder traducirlo.
Lo que necesitaremos para nuestro servicio:
- Microsoft Visual Studio 2019
- ASP.NET Core Web Api
- Cuenta de Microsoft Azure
- Translator
- Insomnia
Primeramente Creamos nuestro Servicio y vemos la documentación necesaria para poder empezar a crear el servicio.
Nos guardaremos nuestra Key, nuestra url en este caso será el Text Translation y nuestra región.
Una ves tenemos todo lo necesario nos vamos a visual studio y creamos un nuevo proyecto ASP.NET Core Web Api
Agregaremos en nuestro caso dos carpetas una para los modelos y otra para el servicio
Para nuestro modelo utilizaremos dos
- AzureTranslatorModel: Modelo de salida del texto(response).
- AzureTranslatorRequestBody: Modelo de entrada de texto(body).
Crearemos nuestro Servicio
Aquí es donde agregaremos nuestra key, la url, la región y nuestra ruta.
La ruta «/translate?api-version=3.0&to=en» la parte final &to=en es el idioma al que vamos a traducirlo.
La carpeta Controller contendrá nuestro controlado es decir donde el un usuario llamara a este controlador y este realizará la llamada al servicio y el mismo controlador nos devolverá una respuesta ya con nuestro modelo que le hemos dado.
En nuestro Controller tendremos que inyectar nuestro servicio sino no podremos realizar nada.
En nuestro Startup Inyectaremos nuestro servicio
Lo iniciaremos nuestro servicio y cogeremos nuestra url del navegador para realizar las llamadas a nuestro servicio
Entramos en Insomnia y colocamos la url y ponemos que nuestra llamada es POST y en el body ponemos nuestro json para poder realizar la consulta y ejecutamos.
Uno de los problemas que tuve es el 401 esponse.reasonphrase unauthorized
El problema es que en el servicio no estaba enviado la región por lo tanto tuve que añadirla y enviar el parámetro. Es obligatorio mandar tanto la key como la región.
Autor/a: Jinson Israel Lasluisa Remache
Curso: Desarrollo Web Full Stack, MultiCloud y Multiplataforma
Centro: Tajamar
Año académico: 2021-2022
Código / recursos utilizados / Otros datos de interés:
Solución al problema https://docs.microsoft.com/en-us/azure/cognitive-services/Translator/reference/v3-0-reference#authentication
Servicio y Model https://docs.microsoft.com/es-es/azure/cognitive-services/translator/quickstart-translator?tabs=csharp
Request Body https://docs.microsoft.com/en-us/azure/cognitive-services/Translator/reference/v3-0-translate