space-lib
Documentation for how to use space-lib
space-lib is a crate that abstracts the low level details of calling our custom host functions and includes some nice helper functions. The crate is located here: docs.rs/space-lib.
It currently includes a HTTP client that is used for sending requests and receiving responses to websites.
HTTP Client
use space_lib::Request;
let body = Request::get("https://www.spaceoperator.com")
.call()?
.into_string()?;
There are multiple ways to create a Request, and get
is one of them. There's also post
, delete
, head
, patch
and put
. To set a header field, use the set method like so:
use space_lib::Request;
let body = Request::get("https://www.spaceoperator.com")
.set("Authorization", "Bearer 12345")?;
For setting a query field, use the query
method. To send any data with the request, use any of these methods: send_bytes
, send_string
, send_form
and send_json
. Note that the type need to implement serde::Serialize
to be able to serialize them into json.
After creating the Request, use the call
method. This will call the request on the host system where the Web Assembly is running. After this, you will get a Response.
There are three methods that can be called on Response: into_vec
which returns Vec<u8>
, into_string
which returns Result<String>
and into_json
which returns Result<T>
where T: serde::DeserializeOwned.
Last updated
Was this helpful?