Fix routing errors 2 + Version File Response (#290)

This commit is contained in:
Geometrically
2022-02-06 17:54:01 -07:00
committed by GitHub
parent 0cbc2001e2
commit eb4375258e
4 changed files with 13 additions and 6 deletions

1
Cargo.lock generated
View File

@@ -1653,6 +1653,7 @@ dependencies = [
"futures", "futures",
"futures-timer", "futures-timer",
"gumdrop", "gumdrop",
"hex",
"lazy_static", "lazy_static",
"log", "log",
"meilisearch-sdk", "meilisearch-sdk",

View File

@@ -59,3 +59,4 @@ sqlx = { version = "0.5.10", features = ["runtime-actix-rustls", "postgres", "ch
bytes = "1.1.0" bytes = "1.1.0"
dashmap = "4.0.2" dashmap = "4.0.2"
hex = "0.4.3"

View File

@@ -8,7 +8,7 @@ use sqlx::PgPool;
pub fn config(cfg: &mut web::ServiceConfig) { pub fn config(cfg: &mut web::ServiceConfig) {
cfg.service( cfg.service(
web::scope("/tag/") web::scope("tag")
.service(category_list) .service(category_list)
.service(category_create) .service(category_create)
.service(category_delete) .service(category_delete)

View File

@@ -379,7 +379,7 @@ pub struct FileHashes {
} }
// under /api/v2/version_files // under /api/v2/version_files
#[post("/")] #[post("")]
pub async fn get_versions_from_hashes( pub async fn get_versions_from_hashes(
pool: web::Data<PgPool>, pool: web::Data<PgPool>,
file_data: web::Json<FileHashes>, file_data: web::Json<FileHashes>,
@@ -418,7 +418,12 @@ pub async fn get_versions_from_hashes(
.clone() .clone()
.into_iter() .into_iter()
.find(|x| x.id.0 == row.version_id) .find(|x| x.id.0 == row.version_id)
.map(|v| (row.hash, crate::models::projects::Version::from(v))) .map(|v| {
(
hex::encode(row.hash),
crate::models::projects::Version::from(v),
)
})
}) })
.collect(); .collect();
Ok(HttpResponse::Ok().json(response)) Ok(HttpResponse::Ok().json(response))
@@ -463,7 +468,7 @@ pub async fn download_files(
&pepper, &pepper,
) )
.await?; .await?;
response.insert(row.hash, row.url); response.insert(hex::encode(row.hash), row.url);
} }
Ok(HttpResponse::Ok().json(response)) Ok(HttpResponse::Ok().json(response))
@@ -540,7 +545,7 @@ pub async fn update_files(
for row in &result { for row in &result {
if let Some(version) = versions.iter().find(|x| x.id.0 == row.version_id) { if let Some(version) = versions.iter().find(|x| x.id.0 == row.version_id) {
response.insert( response.insert(
row.hash.clone(), hex::encode(&row.hash),
models::projects::Version::from(version.clone()), models::projects::Version::from(version.clone()),
); );
} }