parse-filename
All checks were successful
deploy / deploy (push) Successful in 1m3s

This commit is contained in:
Untone 2024-10-22 21:31:38 +03:00
parent 5283a878ed
commit d259fb44cb

View File

@ -64,7 +64,6 @@ pub async fn proxy_handler(
serve_file(thumb_filename, &state).await serve_file(thumb_filename, &state).await
}, },
Ok(false) => { Ok(false) => {
warn!("generate new thumb files: {}", stored_path);
if let Ok(filedata) = load_file_from_s3( if let Ok(filedata) = load_file_from_s3(
&state.storj_client, &state.storj_client,
&state.bucket, &state.bucket,
@ -72,8 +71,8 @@ pub async fn proxy_handler(
) )
.await .await
{ {
warn!("original file loaded: {} bytes", filedata.len()); warn!("generate new thumb files: {}", stored_path);
warn!("generate new thumb files"); warn!("{} bytes", filedata.len());
thumbdata_save( thumbdata_save(
filedata.clone(), filedata.clone(),
&state, &state,
@ -142,13 +141,10 @@ async fn thumbdata_save(
let state = state.clone(); let state = state.clone();
if content_type.starts_with("image") { if content_type.starts_with("image") {
warn!("original file name: {}", original_filename); warn!("original file name: {}", original_filename);
let filename = original_filename.to_string(); let (base_filename, _, extension) = parse_image_request(&original_filename).unwrap();
let ext = match filename.split(".").last() { let filename = format!("{}.{}", base_filename, extension);
Some(ext) => ext.to_string(),
None => "".to_string(),
};
warn!("file extension: {}", ext); warn!("file extension: {}", extension);
let img = match image::load_from_memory(&original_data) { let img = match image::load_from_memory(&original_data) {
Ok(img) => img, Ok(img) => img,
@ -162,7 +158,7 @@ async fn thumbdata_save(
match generate_thumbnails(&img).await { match generate_thumbnails(&img).await {
Ok(thumbnails_bytes) => { Ok(thumbnails_bytes) => {
for (thumb_width, thumbnail) in thumbnails_bytes { for (thumb_width, thumbnail) in thumbnails_bytes {
let thumb_filename = format!("{}_{}.{}", filename, thumb_width, ext); let thumb_filename = format!("{}_{}.{}", base_filename, thumb_width, extension);
// Загружаем миниатюру в S3 // Загружаем миниатюру в S3
if let Err(e) = upload_to_s3( if let Err(e) = upload_to_s3(
&state.storj_client, &state.storj_client,