Lingara API 库
本页译自英文。如两者有出入,以英文页面为准。 阅读英文页面
Lingara API 库调用的正是参考文档所描述的那个 API,用的是你已经在写的语言。每个库都由同一份规范生成,遵守同一套约定,所以你在一个库里学到的东西可以直接用到其他库上:
- 身份验证。 你只需把客户端 ID 和密钥交给客户端一次。它会用它们换取访问令牌、缓存令牌、在令牌过期前不久刷新它,并在 API 返回 401 时用新令牌把调用重试一次。
- 流。 以流方式返回的操作(例如生成词汇)会以该语言自身的迭代器形式到达。库会解析事件,并在流结束时终止迭代。
- 错误。 每一个失败都是四种错误之一,它们共享同一个基类型,所以一个处理程序就能全部捕获。
- 重试。 告知了需要等待多久的 429 或 503 会在一定限度内自动为你重试。其他任何情况都会立即抛出。
这些页面上的每个代码示例都来自已发布的库版本,在发布之前都经过编译和测试。
安装
在下方选择你的语言。每种语言都有自己的页面,介绍第一次调用;使用这些库下的页面会更详细地解释每一项行为。
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.6编程语言
- TypeScript
适用于 Node.js 的 Lingara API 库,发布在 npm 上。
- Rust
适用于异步 Rust 的 Lingara API 库,发布在 crates.io 上。
- Go
适用于 Go 的 Lingara API 库,一个除标准库之外没有任何依赖的模块。
- Java
适用于 Java 17 及更高版本的 Lingara API 库,发布在 Maven Central 上。
- Kotlin
运行在 JVM 上、基于协程构建的 Kotlin 版 Lingara API 库。
- Ruby
适用于 Ruby 的 Lingara API 库,一个没有运行时依赖的 gem。
- PHP
适用于 PHP 8.2 及更高版本的 Lingara API 库,发布在 Packagist 上。