Перейти к основному содержанию

Параметры

message
string
обязательно
Сообщение в кодировке base-64
commitment
string
Уровень подтверждения для расчёта комиссии

Ответ

result
object

Примеры кода

Базовый запрос

curl http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getFeeForMessage",
  "params": [
    "AQABAyRn/PA8jzJtN6oAyB3VR0nfOF0xnfkYaKwY4Ir3nrHFJGqhAQICAAEDAgABDAIAAAAEAAAAAAAA",
    {"commitment": "processed"}
  ]
}'

Использование web3.js

import { Connection } from '@solana/web3.js';

const connection = new Connection('http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY');
const message = 'AQABAyRn/PA8jzJtN6oAyB3VR0nfOF0xnfkYaKwY4Ir3nrHFJGqhAQICAAEDAgABDAIAAAAEAAAAAAAA';
const fee = await connection.getFeeForMessage(message);
console.log(fee);

Использование Python

from solana.rpc.api import Client

client = Client("http://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY")
message = "AQABAyRn/PA8jzJtN6oAyB3VR0nfOF0xnfkYaKwY4Ir3nrHFJGqhAQICAAEDAgABDAIAAAAEAAAAAAAA"
response = client.get_fee_for_message(message)
print(response)

Примечания

  1. Возвращает комиссию, которую сеть возьмёт за конкретное сообщение
  2. Полезно для более точного расчёта комиссий за транзакции
  3. Предпочтительнее устаревших методов расчёта комиссий
  4. Можно указать разные уровни подтверждения
  5. Возвращает null, если сообщение недействительно или не может быть обработано

Рекомендации

  1. Используйте этот метод для точного прогнозирования комиссий перед отправкой транзакций
  2. Предоставляйте корректное сообщение в кодировке base64, чтобы избежать null-ответов
  3. Обрабатывайте null-ответы должным образом в вашем приложении
  4. Обрабатывайте сетевые ошибки и выполняйте повторные попытки при необходимости
  5. Используйте этот метод, когда необходим точный расчёт комиссии