Bibliotecas de la API de Lingara
Esta página está traducida del inglés. Si ambas difieren, la página en inglés es la correcta. Leer la página en inglés
Las bibliotecas de la API de Lingara llaman a la misma API que describe la referencia, en el lenguaje que ya escribes. Cada una se genera a partir de la misma especificación y mantiene el mismo contrato, así que lo que aprendas en una te sirve en las demás:
- Autenticación. Le das al cliente tu ID de cliente y tu secreto una sola vez. Los intercambia por un token de acceso, lo guarda en caché, lo renueva poco antes de que caduque y reintenta una llamada una vez con un token nuevo si la API responde 401.
- Flujos. Las operaciones que emiten un flujo, como generar vocabulario, llegan como el tipo de iterador propio del lenguaje. La biblioteca analiza los eventos y termina la iteración cuando el flujo acaba.
- Errores. Todo fallo es uno de cuatro errores con un tipo base común, así que un solo manejador puede capturarlos todos.
- Reintentos. Un 429 o 503 que indica cuánto esperar se reintenta por ti, hasta un límite. Todo lo demás se lanza de inmediato.
Cada ejemplo de código de estas páginas procede de una versión publicada de las bibliotecas, donde se compila y se prueba antes de publicarse.
Instalación
Elige tu lenguaje a continuación. Cada lenguaje tiene su propia página con una primera llamada, y las páginas de Uso de las bibliotecas explican cada comportamiento con más detalle.
TypeScript
npm install @lingara/api@0.1.0-alpha.6Rust
cargo add lingara@0.1.0-alpha.6
cargo add tokio --features macros,rt-multi-threadGo
go get github.com/Spinning-Cat-Studios/lingara_api_clients/go@v0.1.0-alpha.6Java
<dependency>
<groupId>com.getlingara</groupId>
<artifactId>lingara-java</artifactId>
<version>0.1.0-alpha.6</version>
</dependency>Kotlin
implementation("com.getlingara:lingara-kotlin:0.1.0-alpha.6")Ruby
gem install lingara -v 0.1.0-alpha.6PHP
composer require spinningcatstudios/lingara:0.1.0-alpha.6Lenguajes
- TypeScript
La biblioteca de la API de Lingara para Node.js, publicada en npm.
- Rust
La biblioteca de la API de Lingara para Rust asíncrono, publicada en crates.io.
- Go
La biblioteca de la API de Lingara para Go, un módulo sin dependencias fuera de la biblioteca estándar.
- Java
La biblioteca de la API de Lingara para Java 17 y posteriores, publicada en Maven Central.
- Kotlin
La biblioteca de la API de Lingara para Kotlin en la JVM, construida sobre corrutinas.
- Ruby
La biblioteca de la API de Lingara para Ruby, una gema sin dependencias en tiempo de ejecución.
- PHP
La biblioteca de la API de Lingara para PHP 8.2 y posteriores, publicada en Packagist.
Uso de las bibliotecas
- Autenticación
Cómo cada biblioteca convierte tu ID de cliente y tu secreto en tokens de acceso, y los mantiene vigentes.
- Flujos
Cómo entregan las bibliotecas los resultados en flujo, y cuándo un flujo termina o falla.
- Errores y reintentos
Los cuatro errores que lanza cada biblioteca, y qué fallos reintenta por ti.