Skip to content

Commit b68687c

Browse files
committed
Set Accept header for crates.io API requests
Fixes: rust-lang#81 Ref: rust-lang/crates.io#466 Ref: rust-lang/crates.io#464
1 parent 21f5caf commit b68687c

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

src/db/add_package.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ use cargo::core::{Package, TargetKind};
1212
use rustc_serialize::json::{Json, ToJson};
1313
use slug::slugify;
1414
use hyper::client::Client;
15+
use hyper::header::{Accept, qitem};
1516
use semver;
1617
use postgres::Connection;
1718
use time;
@@ -271,7 +272,9 @@ fn get_release_time_yanked_downloads
271272
// FIXME: There is probably better way to do this
272273
// and so many unwraps...
273274
let client = Client::new();
274-
let mut res = client.get(&url[..]).send().unwrap();
275+
let mut res = try!(client.get(&url[..])
276+
.header(Accept(vec![qitem("application/json".parse().unwrap())]))
277+
.send());
275278
let mut body = String::new();
276279
res.read_to_string(&mut body).unwrap();
277280
let json = Json::from_str(&body[..]).unwrap();
@@ -385,7 +388,9 @@ fn add_owners_into_database(conn: &Connection,
385388
let owners_url = format!("https://crates.io/api/v1/crates/{}/owners",
386389
&pkg.manifest().name());
387390
let client = Client::new();
388-
let mut res = client.get(&owners_url[..]).send().unwrap();
391+
let mut res = try!(client.get(&owners_url[..])
392+
.header(Accept(vec![qitem("application/json".parse().unwrap())]))
393+
.send());
389394
// FIXME: There is probably better way to do this
390395
// and so many unwraps...
391396
let mut body = String::new();

src/docbuilder/queue.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
use super::DocBuilder;
55
use rustc_serialize::json::{Json, Array};
66
use hyper;
7+
use hyper::header::{Accept, qitem};
78
use db::connect_db;
89
use errors::*;
910

@@ -16,7 +17,9 @@ impl DocBuilder {
1617
let body = {
1718
use std::io::Read;
1819
let client = hyper::Client::new();
19-
let mut res = try!(client.get("https://crates.io/summary").send());
20+
let mut res = try!(client.get("https://crates.io/summary")
21+
.header(Accept(vec![qitem("application/json".parse().unwrap())]))
22+
.send());
2023
let mut body = String::new();
2124
try!(res.read_to_string(&mut body));
2225
body

0 commit comments

Comments
 (0)