API WebSocket da Blockchain.com
Receba notificações de transações Bitcoin, eventos de novos blocos e atividade de endereço em tempo real pelo gateway WebSocket público da Blockchain.com.
Receba notificações de transações Bitcoin, eventos de novos blocos e atividade de endereço em tempo real pelo gateway WebSocket público da Blockchain.com.
O endpoint WebSocket da Blockchain.com é um canal público de comandos JSON — use o TsgcWebSocketClient genérico para enviar mensagens op e receber eventos utx/block.
TsgcWebSocketClient
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Abra um TsgcWebSocketClient contra wss://ws.blockchain.info/inv, envie os comandos de inscrição JSON e faça o parsing dos eventos utx e block recebidos.
uses
sgcWebSocket, sgcJSON;
var
WSClient: TsgcWebSocketClient;
begin
WSClient := TsgcWebSocketClient.Create(nil);
WSClient.URL := 'wss://ws.blockchain.info/inv';
WSClient.OnMessage := procedure(Connection: TsgcWSConnection; const Text: string)
begin
Memo1.Lines.Add(Text);
end;
WSClient.OnConnect := procedure(Connection: TsgcWSConnection)
begin
// Subscribe to all new bitcoin transactions
Connection.WriteData('{"op":"unconfirmed_sub"}');
// Receive new blocks
Connection.WriteData('{"op":"blocks_sub"}');
// Subscribe to a specific address
Connection.WriteData('{"op":"addr_sub","addr":"1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"}');
end;
WSClient.Active := True;
end;
// uses: sgcWebSocket
TsgcWebSocketClient *WSClient = new TsgcWebSocketClient(this);
WSClient->URL = "wss://ws.blockchain.info/inv";
// Hook OnMessage and OnConnect, then subscribe:
// WSClient->WriteData("{\"op\":\"unconfirmed_sub\"}");
// WSClient->WriteData("{\"op\":\"blocks_sub\"}");
WSClient->Active = true;
A Blockchain.com expõe um simples canal de operações JSON sobre WebSocket — use TsgcWebSocketClient diretamente.
Envie {"op":"unconfirmed_sub"} após conectar para receber cada nova transação da mempool como um envelope {"op":"utx", "x":{...}}.
{"op":"blocks_sub"} inscreve-se nas notificações de novos blocos — um {"op":"block", "x":{...}} chega por bloco minerado (observe que o protocolo pode publicar mais de um evento quando ocorre uma divisão da cadeia).
{"op":"addr_sub","addr":"<bitcoin-address>"} inscreve-se em transações de entrada/saída para um único endereço. Use "addr_unsub" para parar.
Como a Blockchain.com usa um simples canal de comandos JSON, o componente TsgcWebSocketClient é suficiente — nenhuma classe Delphi específica de exchange é necessária.
Configure o WatchDog no cliente para reconectar automaticamente em quedas de rede, e o HeartBeat com ping no nível TCP para manter a conexão ativa através de timeouts de NAT.
Receba cada frame em OnMessage e então faça o parsing com sgcJSON ou sua biblioteca JSON preferida. O corpo da transação fica sob o campo x do envelope.
Fontes autoritativas das APIs às quais este componente se conecta.
Acesse direto a referência do componente, baixe o projeto de demonstração pronto para rodar e baixe a versão de avaliação.
| Ajuda online — API_Blockchain Notas sobre como conectar ao gateway WebSocket da Blockchain.com a partir do Delphi. | Abrir | |
| Versão de avaliação — sgcWebSockets Baixe o pacote de avaliação para usar o TsgcWebSocketClient contra qualquer endpoint WebSocket público. | Abrir | |
| Documento técnico (PDF) Features, quick start, code samples for Delphi & C++ Builder and primary-source references — this component only. | Abrir | |
| Manual do usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca. | Abrir |