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。