Metoda RPC sendTransaction
Przesyła podpisaną transakcję do klastra w celu przetworzenia.
Ta metoda nie zmienia w żaden sposób transakcji; przekazuje transakcję utworzoną przez klientów do węzła w niezmienionej formie.
Jeśli usługa rpc węzła otrzyma transakcję, metoda ta natychmiast zakończy się sukcesem, bez oczekiwania na jakiekolwiek potwierdzenia. Pozytywna odpowiedź z tej metody nie gwarantuje, że transakcja zostanie przetworzona lub potwierdzona przez klaster.
Chociaż usługa rpc będzie podejmować rozsądne próby ponownego przesłania,
transakcja może zostać odrzucona, jeśli recent_blockhash
transakcji wygaśnie,
zanim zostanie zrealizowana.
Użyj getSignatureStatuses
, aby upewnić
się, że transakcja została przetworzona i potwierdzona.
Przed przesłaniem wykonywane są następujące kontrole wstępne:
- Weryfikowane są podpisy transakcji
- Transakcja jest symulowana w odniesieniu do slotu bankowego określonego przez wstępne zobowiązanie. W przypadku niepowodzenia zostanie zwrócony błąd. Kontrole wstępne mogą być wyłączone, jeśli jest to pożądane. Zaleca się określenie tego samego zobowiązania i wstępnego zobowiązania, aby uniknąć mylącego zachowania.
Zwrócony podpis to pierwszy podpis w transakcji, który jest używany do identyfikacji transakcji (id transakcji). Ten identyfikator można łatwo wyodrębnić z danych transakcji przed jej przesłaniem.
$ curl https://api.devnet.solana.com -s -X \> POST -H "Content-Type: application/json" -d '> {> "jsonrpc": "2.0",> "id": 1,> "method": "sendTransaction",> "params": [> "4hXTCkRzt9WyecNzV1XPgCDfGAZzQKNxLXgynz5QDuWWPSAZBZSHptvWRL3BjCvzUXRdKvHL2b7yGrRQcWyaqsaBCncVG7BFggS8w9snUts67BSh3EqKpXLUm5UMHfD7ZBe9GhARjbNQMLJ1QD3Spr6oMTBU6EhdB4RD8CP2xUxr2u3d6fos36PD98XS6oX8TQjLpsMwncs5DAMiD4nNnR8NBfyghGCWvCVifVwvA8B8TJxE1aiyiv2L429BCWfyzAme5sZW8rDb14NeCQHhZbtNqfXhcp2tAnaAT"> ]> }> '
params
W pełni podpisana transakcja, zakodowana jako ciąg znaków.
Obiekt konfiguracyjny zawierający następujące pola:
result
{"jsonrpc": "2.0","result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb","id": 1}
Pierwszy podpis transakcji osadzony w transakcji, zakodowany jako ciąg base-58 (id transakcji)
Is this page helpful?