b22eae2726
新增 3840 边长、16 像素对齐、3:1 比例和总像素范围校验 要求 image 与 mask 为可完整解码的 PNG 并在扣费前拒绝非法输入 将 Raw 路由 JSON body limit 提升至 64 MiB 同步 Raw 图片编辑技术方案和边界测试
15 lines
537 B
Rust
15 lines
537 B
Rust
use axum::{Router, extract::DefaultBodyLimit, middleware, routing::post};
|
|
|
|
use crate::{auth::require_bearer_auth, raw_image::edit_raw_image, state::AppState};
|
|
|
|
const RAW_IMAGE_EDIT_BODY_LIMIT_BYTES: usize = 64 * 1024 * 1024;
|
|
|
|
pub fn router(state: AppState) -> Router<AppState> {
|
|
Router::new().route(
|
|
"/api/raw/v1/images/edit",
|
|
post(edit_raw_image)
|
|
.route_layer(middleware::from_fn_with_state(state, require_bearer_auth))
|
|
.layer(DefaultBodyLimit::max(RAW_IMAGE_EDIT_BODY_LIMIT_BYTES)),
|
|
)
|
|
}
|