syntax = "v1" info ( title: "上传" desc: "图片上传,用于行驶证等需 URL 的接口" version: "v1" ) type ( UploadImageReq { ImageBase64 string `json:"image_base64" validate:"required"` // 图片 base64(不含 data URL 前缀) } UploadImageResp { Url string `json:"url"` // 可公网访问的图片 URL } ServeUploadedFileReq { FileName string `path:"fileName"` // 文件名,如 uuid.jpg } // 实际由 Handler 根据 FilePath/ContentType 写文件流,不返回 JSON ServeUploadedFileResp { FilePath string `json:"-"` // 内部:本地文件路径 ContentType string `json:"-"` // 内部:Content-Type } ) @server ( prefix: api/v1 group: upload ) service main { @doc "上传图片,返回可访问 URL(如行驶证);限制 3MB" @handler UploadImage post /upload/image (UploadImageReq) returns (UploadImageResp) @doc "访问已上传文件(供第三方或前端通过返回的 URL 拉取)" @handler ServeUploadedFile get /upload/file/:fileName (ServeUploadedFileReq) returns (ServeUploadedFileResp) }