urltemplate 0.1.3

Lightweight URL templates. Master URLs with placeholders!
Documentation

Urltemplate

Convert URL template containing placeholders into url. Whenever you need to turn https://example.com/?utm_source={source}&key2={value2} into URL like https://example.com/?utm_source=github&key2=

Usage

extern crate urltemplate;
use urltemplate::UrlTemplate;
use std::collections::HashMap;

let mut params = HashMap::new();
params.insert("source".to_string(), "url-template-crate-❤".to_string());
let url_with_placeholders = String::from("https://www.mozilla.org/?utm_source={source}");
let url_as_string =  url_with_placeholders.substitute_str(&params).expect("valid url");
let url_as_url =  url_with_placeholders.substitute(&params).expect("valid url");
assert_eq!(url_as_string, "https://www.mozilla.org/?utm_source=url-template-crate-❤");
assert_eq!(url_as_url.query(), Some("utm_source=url-template-crate-❤"));

Notes

  • UTF safe
  • no external dependencies (only url crate is required)
  • compact and clean implementation