Esta página foi traduzida automaticamente. A versão em inglês é a fonte e pode ser mais precisa ou estar mais atualizada. Ver em inglês

Bibliotecas cliente

O finlight publica oito bibliotecas cliente oficiais. Cada uma envolve a mesma superfície REST, WebSocket e de webhooks documentada no restante destas páginas, então você pode escolher a que combina com sua stack em vez de escrever as chamadas HTTP na mão.

LinguagemPacoteRequerStreaming
TypeScript / JavaScriptfinlight-client (npm)Node.jsSim
Pythonfinlight-client (PyPI)Python 3.7+Sim
Gogithub.com/callbk/finlight-client-goGo 1.23+Sim
.NET / C#Finlight.Client (NuGet).NET 8+Sim
Java / Kotlinme.finlight:finlight-client (Maven)Java 17+Sim
PHPfinlight/client (Packagist)PHP 8.1+Não
Rubyfinlight-client (RubyGems)Ruby 3.2+Sim
Rustfinlight-client (crates.io)Rust 1.85+Sim

O que cada cliente oferece

As bibliotecas são construídas segundo a mesma especificação, então trocar de linguagem não muda os conceitos com os quais você trabalha:

  • REST: buscar artigos, obter um artigo específico pelo link e listar as fontes disponíveis — consulte Endpoints.
  • Streaming em tempo real: tanto o feed WebSocket aprimorado quanto o feed bruto, expostos como o tipo de stream idiomático da linguagem (iteradores assíncronos, canais, Streams). As reconexões, o keepalive ping/pong e a rotação proativa da conexão são tratados por você — consulte Fundamentos de WebSocket.
  • Resiliência: novas tentativas com backoff exponencial em respostas 429 e 5xx, de modo que falhas transitórias e limites de taxa não apareçam como erros no seu código.
  • Verificação de webhooks: checagem de assinatura HMAC-SHA256 com proteção contra repetição, de acordo com Autenticação de webhooks.
  • Autenticação: você passa sua chave de API para o construtor e o cliente a envia no cabeçalho X-API-KEY em cada requisição.

Nada nas bibliotecas é privilegiado: tudo o que elas fazem está disponível por HTTP e WebSocket puros, então cURL ou qualquer cliente HTTP continua sendo uma opção totalmente suportada.


Instalação

Cada cliente lê sua chave de API do construtor e a envia no cabeçalho X-API-KEY. Obtenha uma chave no painel do finlight.

Instalação

# npm — também publicado no JSR como @finlight/client
npm install finlight-client

Se você compila com Maven em vez de Gradle, declare a mesma coordenada:

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

Repositórios de código

Cada cliente é desenvolvido de forma aberta sob a licença MIT. Issues e pull requests são bem-vindos.

O que vem a seguir?