Rust wrapper for JokeAPI
use jokeapi_rs::Joke;
fn main() {
println!("{}", Joke::new().fetch().joke());
}
Type can either be "single" or "twopart"
use jokeapi_rs::Joke;
fn main() {
println!("{}", Joke::new().of_type("single").fetch().joke());
}
use jokeapi_rs::Joke;
fn main() {
println!(
"{}",
Joke::new()
.categories(
["programming", "spooky"]
.iter()
.map(|x| x.to_string())
.collect()
)
.fetch()
.joke()
)
}
use jokeapi_rs::structs::joke::Data;
use jokeapi_rs::structs::joke::DataKind;
use jokeapi_rs::Joke;
fn main() {
let res: Data = Joke::new()
.of_type("single")
.categories(
["programming", "pun"]
.iter()
.map(|x| x.to_string())
.collect(),
)
.blacklist(["sexist", "nsfw"].iter().map(|x| x.to_string()).collect())
//.safe() // Uncomment to enable safe mode
.fetch();
// Get the joke
// .joke() method on res does the following for you
match res.kind.clone() {
DataKind::TwoPart { setup, delivery } => {
println!("{}\n{}", setup, delivery)
}
DataKind::Single { joke } => println!("{}", joke),
}
// Access all the json fields
println!("{:#?}", res);
}