Gas
The RPC API enables you to query the gas price for a specific block or hash.
Gas Price
Trả về giá gas cho một
block_height
hoặcblock_hash
cụ thể.
- Dùng tham số
[null]
sẽ trả về giá gas của block mới nhất.
- method:
gas_price
- các param:
[block_height]
,["block_hash"]
, hoặc[null]
[block_height]
- JSON
- JavaScript
- HTTPie
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "gas_price",
"params": [17824600]
}
const response = await near.connection.provider.gasPrice(17824600);
http post https://rpc.testnet.near.org jsonrpc=2.0 method=gas_price params:='[17824600]' id=dontcare
["block_hash"]
- JSON
- JavaScript
- HTTPie
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "gas_price",
"params": ["AXa8CHDQSA8RdFCt12rtpFraVq4fDUgJbLPxwbaZcZrj"]
}
const response = await near.connection.provider.gasPrice(
"AXa8CHDQSA8RdFCt12rtpFraVq4fDUgJbLPxwbaZcZrj"
);
http post https://rpc.testnet.near.org jsonrpc=2.0 method=gas_price params:='["AXa8CHDQSA8RdFCt12rtpFraVq4fDUgJbLPxwbaZcZrj"]' id=dontcare
[null]
- JSON
- JavaScript
- HTTPie
{
"jsonrpc": "2.0",
"id": "dontcare",
"method": "gas_price",
"params": [null]
}
const response = await near.connection.provider.gasPrice(null);
http post https://rpc.testnet.near.org jsonrpc=2.0 method=gas_price params:='[null]' id=dontcare
Ví dụ về response nhận được:
{
"jsonrpc": "2.0",
"result": {
"gas_price": "100000000"
},
"id": "dontcare"
}
Sự cố nào có thể xảy ra?
Khi API request không thành công, RPC server sẽ trả về một error response được cấu trúc sẵn, với một số lượng giới hạn các error variant đã được định nghĩa rõ ràng, từ đó client code có thể handle toàn bộ các error case có thể xảy ra. Các JSON-RPC error của chúng tôi tuân theo quy ước verror để cấu trúc cho error response:
{
"error": {
"name": <ERROR_TYPE>,
"cause": {
"info": {..},
"name": <ERROR_CAUSE>
},
"code": -32000,
"data": String,
"message": "Server error",
},
"id": "dontcare",
"jsonrpc": "2.0"
}
Chú ý
Các field
code
,data
, vàmessage
trong structure trên là những field kế thừa từ Verror và có thể không được dùng nữa trong tương lai. Do đó vui lòng không sử dụng chúng.
Dưới đây là danh sách đầy đủ các error variant có thể được trả về bởi method gas_price
:
ERROR_TYPE | ERROR_CAUSEerror.cause.name | Status Code | Nguyên nhân | Giải pháp |
---|---|---|---|---|
HANDLER_ERROR | UNKNOWN_BLOCK | 200 | Block đang được request chưa được tạo ra, hoặc nó đã được garbage-collect (dọn dẹp để tiết kiệm dung lượng trên node RPC) |
|
REQUEST_VALIDATION_ERROR | PARSE_ERROR | 400 | Đã pass các argument mà JSON RPC server không thể parse được (thiếu các argument, sai format, v.v...) |
|
INTERNAL_ERROR | INTERNAL_ERROR | 500 | Đã xảy ra lỗi với chính node đó, hoặc bị overload |
|