Phương thức RPC sendTransaction

Gửi một giao dịch đã ký đến cluster để xử lý.

Phương thức này không thay đổi giao dịch theo bất kỳ cách nào; nó chuyển tiếp giao dịch được tạo bởi client đến node nguyên trạng.

Nếu dịch vụ rpc của node nhận được giao dịch, phương thức này sẽ thành công ngay lập tức, mà không cần chờ bất kỳ xác nhận nào. Phản hồi thành công từ phương thức này không đảm bảo rằng giao dịch được xử lý hoặc xác nhận bởi cluster.

Mặc dù dịch vụ rpc sẽ cố gắng gửi lại một cách hợp lý, giao dịch có thể bị từ chối nếu recent_blockhash của giao dịch hết hạn trước khi nó được thực hiện.

Sử dụng getSignatureStatuses để đảm bảo giao dịch được xử lý và xác nhận.

Trước khi gửi, các kiểm tra preflight sau đây được thực hiện:

  1. Chữ ký giao dịch được xác minh
  2. Giao dịch được mô phỏng đối với bank slot được chỉ định bởi preflight commitment. Khi thất bại, một lỗi sẽ được trả về. Kiểm tra preflight có thể bị vô hiệu hóa nếu muốn. Khuyến nghị chỉ định cùng một commitment và preflight commitment để tránh hành vi gây nhầm lẫn.

Chữ ký được trả về là chữ ký đầu tiên trong giao dịch, được sử dụng để xác định giao dịch (transaction id). Định danh này có thể dễ dàng trích xuất từ dữ liệu giao dịch trước khi gửi.

$ 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

stringrequired

Giao dịch đã ký đầy đủ, dưới dạng chuỗi mã hóa.

objectoptional

Đối tượng cấu hình chứa các trường sau:

result

Response
{
"jsonrpc": "2.0",
"result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb",
"id": 1
}
string

Chữ ký giao dịch đầu tiên được nhúng trong giao dịch, dưới dạng chuỗi mã hóa base-58 (ID giao dịch)

Is this page helpful?