问题描述
#[post("/upload")]
async fn save_file(mut payload: Multipart) -> impl Responder {
while let Ok(Some(mut field)) = payload.try_next().await {
let content_type = field.content_disposition().unwrap();
let filename = content_type.get_filename().unwrap();
let filepath = format!("./tmp/{}",sanitize_filename::sanitize(&filename.replace(" ","")));
let filepath_for_upload = filepath.clone();
let mut f = web::block(|| std::fs::File::create(filepath))
.await
.unwrap();
while let Some(chunk) = field.next().await {
let data = chunk.unwrap();
f = web::block(move || f.write_all(&data).map(|_| f)).await.unwrap();
}
let mut file_path:Vec<String> = Vec::new();
file_path.push((filepath_for_upload).to_string());
let result = asset_upload_file(file_path);
}
HttpResponse::Found().header("Location","/").finish()
}
--> 错误 小文件上传工作正常,但在上传大文件时,网络浏览器会提示这一点。
“无法连接到站点您的连接已重置。 尝试以下方法。 检查连接 检查代理和防火墙 运行 Windows 网络诊断 ERR_CONNECTION_RESET。"
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)