このページは機械翻訳です。英語版がソースであり、より正確または最新の場合があります。 英語で表示

クライアントライブラリ

finlight は 8 つの公式クライアントライブラリを公開しています。いずれも、これらのドキュメントの他のページで説明されているものと同じ REST、WebSocket、webhook のインターフェースをラップしているため、HTTP 呼び出しを自分で書く代わりに、ご自身のスタックに合ったものを選べます。

言語パッケージ要件ストリーミング
TypeScript / JavaScriptfinlight-client (npm)Node.jsはい
Pythonfinlight-client (PyPI)Python 3.7+はい
Gogithub.com/callbk/finlight-client-goGo 1.23+はい
.NET / C#Finlight.Client (NuGet).NET 8+はい
Java / Kotlinme.finlight:finlight-client (Maven)Java 17+はい
PHPfinlight/client (Packagist)PHP 8.1+いいえ
Rubyfinlight-client (RubyGems)Ruby 3.2+はい
Rustfinlight-client (crates.io)Rust 1.85+はい

すべてのクライアントに共通する機能

これらのライブラリは同じ仕様に基づいて作られているため、言語を切り替えても扱う概念は変わりません:

  • REST:記事の検索、リンクによる単一記事の取得、利用可能なソースの一覧 — エンドポイントをご覧ください。
  • リアルタイムストリーミング:拡張フィードと生の WebSocket フィードの両方を、その言語で慣用的なストリーム型(非同期イテレーター、チャネル、Stream)として提供します。再接続、ping/pong のキープアライブ、先回りの接続ローテーションは自動的に処理されます — WebSocket の基本をご覧ください。
  • 耐障害性429 および 5xx のレスポンスに対して指数バックオフ付きで再試行するため、一時的な失敗やレート制限がコード上のエラーとして表面化しません。
  • Webhook 検証:リプレイ保護付きの HMAC-SHA256 署名チェックで、Webhook 認証に対応します。
  • 認証:API キーをコンストラクターに渡すと、クライアントがすべてのリクエストで X-API-KEY ヘッダーとして送信します。

ライブラリに特権的なものは何もありません。その機能はすべて素の HTTP と WebSocket で利用できるため、cURL や任意の HTTP クライアントも引き続き完全にサポートされる選択肢です。


インストール

どのクライアントもコンストラクターから API キーを読み取り、X-API-KEY ヘッダーとして送信します。キーは finlight ダッシュボードで取得してください。

インストール

# npm — @finlight/client として JSR にも公開
npm install finlight-client

Gradle ではなく Maven でビルドする場合は、同じ座標を宣言します:

<dependency>
    <groupId>me.finlight</groupId>
    <artifactId>finlight-client</artifactId>
    <version>0.1.0</version>
</dependency>

ソースリポジトリ

すべてのクライアントは MIT ライセンスのもとでオープンに開発されています。Issue や pull request を歓迎します。

次のステップ