Skip to content

Commit fb5e5a3

Browse files
committed
Url-encode parameters properly
1 parent d87f22e commit fb5e5a3

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

src/web/releases.rs

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -255,14 +255,17 @@ fn get_search_results(
255255
.unwrap()
256256
});
257257

258-
let url = format!(
259-
"https://crates.io/api/v1/crates?page={page}&per_page={limit}&q={query}",
260-
page = page,
261-
limit = limit,
262-
query = query
263-
);
258+
let page: &str = &page.to_string();
259+
let url = url::Url::parse_with_params(
260+
"https://crates.io/api/v1/crates",
261+
&[
262+
("page", page),
263+
("per_page", &limit.to_string()),
264+
("q", query),
265+
],
266+
)?;
264267
debug!("fetching search results from {}", url);
265-
let releases: CratesIoReleases = HTTP_CLIENT.get(&url).send()?.json()?;
268+
let releases: CratesIoReleases = HTTP_CLIENT.get(url).send()?.json()?;
266269
let query = conn.prepare(
267270
"SELECT github_repos.stars, releases.target_name, releases.rustdoc_status
268271
FROM crates INNER JOIN releases ON crates.id = releases.crate_id

0 commit comments

Comments
 (0)