Skip to main content

upload_image

Function upload_image 

Source
pub async fn upload_image(
    connect_info: Option<Extension<ConnectInfo<SocketAddr>>>,
    headers: HeaderMap,
    multipart: Multipart,
) -> Result<Json<Value>, (StatusCode, Json<Value>)>
Expand description

处理图片上传的 Axum handler(web 端,cookie 鉴权)。

流程:限流 → 解析 session → 校验 admin → 读取 multipart → 早拒非法声明类型 → 读取字节 → 交给共享流水线 process_image_upload

ConnectInfo 以可选扩展注入:dioxus::server::serve() 接管了 listener, 无法调用 into_make_service_with_connect_info::<SocketAddr>(),所以这里 与 serve_image 保持一致的优雅降级——扩展缺失时退回 "unknown" 限流桶。 生产环境应在反向代理后部署并配置 TRUSTED_PROXY_COUNT,让限流拿到真实 IP。