Closed x7yue closed 4 months ago
你好,我在使用
save-image
时发现这个调用会很慢才会返回。 查看源码发现源码内先调用了DOWNLOAD_ATTACH
然后再调用DECRYPT_IMAGE
。 但是在wcf.exe
日志中,发现[2024-05-08 11:28:38.530] [debug] [WCF] [funcs.cpp::242::DownloadAttach] path: xxx.dat
这个日志中保存的.dat
文件其实就是图片文件, 修改后缀之后就是原图。所以是否可以不用DECRYPT_IMAGE
。在
rust
的save_image
方法中decrypt_image
超时逻辑的实现是通过loop
loop { if counter >= msg.timeout { break; } match wc.clone().decrypt_image(DecPath { src: msg.extra.clone(), dst: msg.dir.clone(), }) { Ok(path) => { if path.is_empty() { counter += 1; sleep(Duration::from_secs(1)); continue; } return Ok(warp::reply::json(&ApiResponse { status: 0, error: None, data: Some(path), })); } Err(error) => return handle_error(&error.to_string()), }; }
其实
loop
逻辑中会多次调用decrypt_image
可能会导致多次解密。
测试发现是因为我请求的是 localhost
改成 127.0.0.1
会变快。顺便测试了不解密图片的 dat
文件确实可以使用。
你好,我在使用
save-image
时发现这个调用会很慢才会返回。 查看源码发现源码内先调用了DOWNLOAD_ATTACH
然后再调用DECRYPT_IMAGE
。 但是在wcf.exe
日志中,发现[2024-05-08 11:28:38.530] [debug] [WCF] [funcs.cpp::242::DownloadAttach] path: xxx.dat
这个日志中保存的.dat
文件其实就是图片文件, 修改后缀之后就是原图。所以是否可以不用DECRYPT_IMAGE
。 在rust
的save_image
方法中decrypt_image
超时逻辑的实现是通过loop
loop { if counter >= msg.timeout { break; } match wc.clone().decrypt_image(DecPath { src: msg.extra.clone(), dst: msg.dir.clone(), }) { Ok(path) => { if path.is_empty() { counter += 1; sleep(Duration::from_secs(1)); continue; } return Ok(warp::reply::json(&ApiResponse { status: 0, error: None, data: Some(path), })); } Err(error) => return handle_error(&error.to_string()), }; }
其实
loop
逻辑中会多次调用decrypt_image
可能会导致多次解密。测试发现是因为我请求的是
localhost
改成127.0.0.1
会变快。顺便测试了不解密图片的dat
文件确实可以使用。
可以使用指的是可以直接打开查看
吗?
你好,我在使用
save-image
时发现这个调用会很慢才会返回。 查看源码发现源码内先调用了DOWNLOAD_ATTACH
然后再调用DECRYPT_IMAGE
。 但是在wcf.exe
日志中,发现[2024-05-08 11:28:38.530] [debug] [WCF] [funcs.cpp::242::DownloadAttach] path: xxx.dat
这个日志中保存的.dat
文件其实就是图片文件, 修改后缀之后就是原图。所以是否可以不用DECRYPT_IMAGE
。 在rust
的save_image
方法中decrypt_image
超时逻辑的实现是通过loop
loop { if counter >= msg.timeout { break; } match wc.clone().decrypt_image(DecPath { src: msg.extra.clone(), dst: msg.dir.clone(), }) { Ok(path) => { if path.is_empty() { counter += 1; sleep(Duration::from_secs(1)); continue; } return Ok(warp::reply::json(&ApiResponse { status: 0, error: None, data: Some(path), })); } Err(error) => return handle_error(&error.to_string()), }; }
其实
loop
逻辑中会多次调用decrypt_image
可能会导致多次解密。测试发现是因为我请求的是
localhost
改成127.0.0.1
会变快。顺便测试了不解密图片的dat
文件确实可以使用。可以使用指的是可以
直接打开查看
吗?
对,改后缀名就可以直接查看了
虽然有点儿不可思议,但能用就行。
你好,我在使用
save-image
时发现这个调用会很慢才会返回。 查看源码发现源码内先调用了DOWNLOAD_ATTACH
然后再调用DECRYPT_IMAGE
。 但是在wcf.exe
日志中,发现[2024-05-08 11:28:38.530] [debug] [WCF] [funcs.cpp::242::DownloadAttach] path: xxx.dat
这个日志中保存的.dat
文件其实就是图片文件, 修改后缀之后就是原图。所以是否可以不用DECRYPT_IMAGE
。在
rust
的save_image
方法中decrypt_image
超时逻辑的实现是通过loop
其实
loop
逻辑中会多次调用decrypt_image
可能会导致多次解密。