2 releases
0.1.1 | Aug 20, 2022 |
---|---|
0.1.0 | Aug 19, 2022 |
#130 in #codegen
5KB
httpfile-rs
How to get started?
- Add dependencies in
Cargo.toml
:
[dependencies]
httpfile = "0.1"
reqwest = { version = "0.11", features = ["json"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1", features = ["full"] }
handlebars = "4"
lazy_static="1.4"
[build-dependencies]
httpfile-build = "0.1"
- Create http file, such as
index.http
with following content:
### get my ip
//@name my-ip
GET https://httpbin.org/ip
User-Agent: curl/7.47.0
- Create a Rust module, such as
httpbin.rs
with following content:
// this would include code generated for package hello from .http file
httpfile::include_http!("index");
- Add following code to build.rs:
httpfle::configure()
.httpfile("index.http")
.compile()
.unwrap();
- Call http requests in your code:
let response = httpbin::my_ip().await?;
References
- Environment variables Cargo sets for build scripts: https://doc.rust-lang.org/cargo/reference/environment-variables.html
- reqwest: an ergonomic, batteries-included HTTP Client for Rust - https://github.com/seanmonstar/reqwest
Dependencies
~6–18MB
~274K SLoC