Настройка клиента SDK

После импорта sdk в проект его можно использовать для взаимодействия с блокчейном Namada. Предположим, что у нас есть узел, работающий по ip и порту 127.0.0.1:26657, и мы хотим отправить транзакцию в сеть.

SDK может быть использован для различных целей, но в данном примере мы будем использовать его для отправки транзакции в сеть.

Для начала нам необходимо реализовать клиент, чтобы мы могли взаимодействовать с работающим узлом.

use reqwest::{Client, Response as ClientResponse};
 
 
pub struct SdkClient {
    url: String,
    client: Client,
}
 
impl SdkClient {
    pub fn new(url: String) -> Self {
        Self {
            client: Client::new(),
            url,
        }
    }
 
    pub async fn post(&self, body: String) -> Result<ClientResponse, reqwest::Error> {
        self.client
            .post(format!("http://{}", &self.url))
            .body(body)
            .send()
            .await
    }
}

Это позволяет нам использовать Client из reqwest (внешняя библиотека) для отправки транзакции в сеть.

Нам также необходимо определить некоторые функции, которые клиент будет использовать для взаимодействия с сетью.

Теперь мы готовы использовать этого клиента для отправки транзакций.

Last updated