fusenapi/server_api/upload.api
2023-08-18 16:47:22 +08:00

135 lines
5.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "v1"
info (
title: // TODO: add title
desc: // TODO: add description
author: ""
email: ""
)
import "basic.api"
service upload {
@handler UploadUpFileHandler
get /api/upload/up-file(RequestUpFile) returns (response);
@handler UploadFileFrontendHandler
post /api/upload/upload-file-frontend(RequestUploadFileFrontend) returns (response);
@handler UploadFileBackendHandler
post /api/upload/upload-file-backend(UploadFileBackendReq) returns (response);
//生成二维码
@handler UploadQrcodeHandler
post /api/upload/qrcode(UploadQrcodeReq) returns (response);
// 上传文件发起--单个文件--后端上传
@handler UploadFilesBackendHandler
post /api/upload/upload-files-backend(UploadFilesReq) returns (response);
// 上传文件发起--多个文件--前端上传
@handler UploadFilesFrontendHandler
post /api/upload/upload-files-frontend(UploadFilesReq) returns (response);
// 上传文件回调
@handler UploadCallbackHandler
post /api/upload/upload-callback(UploadCallbackReq) returns (response);
// 上传LOGO
@handler UploadLogoHandler
post /api/upload/up-logo(UploadLogoReq) returns (response);
// 上传文件发起--base64
@handler UploadFileBaseHandler
post /api/upload/upload-file-base(UploadFileBaseReq) returns (response);
@handler UploadLogoStandardHandler
post /api/upload/up-standard-logo(UploadLogoStandardReq) returns (response);
}
type (
UploadLogoStandardReq {
IsRemoveBg string `form:"is_remove_bg"`
LogoFile string `form:"logo_file"`
Width string `form:"width"`
Height string `form:"height"`
Proportion int64 `form:"proportion"`
}
)
type (
UploadFileBaseReq {
ApiType int64 `form:"api_type,options=[1,2],default=1"` // 调用类型1=对外2=对内
FileKey string `form:"file_key"` // 上传唯一标识信息
FileData string `form:"file_data"` // 上传文件额外信息
Metadata string `form:"meta_data,optional"` // 上传文件额外信息
UserId int64 `form:"user_id,optional"` // 上传文件额外信息
GuestId int64 `form:"guest_id,optional"` // 上传文件额外信息
UploadBucket int64 `form:"upload_bucket,options=[1,2],default=1"` // 上传桶名:1=缓存,2=持久
Source string `form:"source"` // 上传来源
}
)
type (
UploadLogoReq {
FileKey string `form:"file_key"` // 上传logo唯一标识信息
IsRemoveBg int64 `form:"is_remove_bg,optional"` // 是否要去掉背景
Proportion int64 `form:"proportion,default=60"` // 贴图在模型面板上的比例
SkuId int64 `form:"sku_id,default=0"` // 模板ID
}
)
type (
UploadFileBackendReq {
ApiType int64 `form:"api_type,options=[1,2],default=1"` // 调用类型1=对外2=对内
UploadBucket int64 `form:"upload_bucket,options=[1,2],default=1"` // 上传桶名:1=缓存,2=持久
FileKey string `form:"file_key"` // 上传唯一标识信息
FileSize int64 `form:"file_size,optional"` // 上传唯一标识信息
Metadata string `form:"meta_data,optional"` // 上传文件额外信息
Source string `form:"source"` // 上传来源
}
UploadFilesReq {
ApiType int64 `form:"api_type,options=[1,2],default=1"` // 调用类型1=对外2=对内
UploadBucket int64 `form:"upload_bucket,options=[1,2],default=1"` // 上传桶名:1=缓存,2=持久
UploadInfo string `form:"upload_info"` // 上传信息 json
Source string `form:"source"` // 上传来源
}
UploadCallbackReq {
UploadBucket int64 `form:"upload_bucket,options=[1,2],default=1"` // 上传桶名:1=缓存,2=持久
ResourceId string `form:"resource_id"` // 资源ID
ResourceType string `form:"resource_type"` // 资源类型
ResourceUrl string `form:"resource_url"` // 资源URL
Metadata string `form:"metadata,optional"` // 元数据,json格式,存储图像分率
ApiType int64 `form:"api_type,options=[1,2],default=1"` // 调用类型1=对外2=对内
Source string `form:"source"` // 上传来源
}
)
type RequestUpFile {
UpFile string `form:"upfile"`
IsCut string `form:"is_cut"` // 是否裁剪
}
type RequestUploadFileFrontend {
FileName string `json:"file_name"` // 文件名
FileType string `json:"file_type"` // Image / fbx / hdr
FileSize int64 `json:"file_size"` // 文件大小
Category string `json:"category"` // 类别
}
type RequestUploadFileBackend {
File File `file:"file"` // 文件名
FileType string `form:"file_type"` // Image / fbx / hdr
Category string `form:"category"` // 类别
}
//生成二维码
type UploadQrcodeReq {
Url string `json:"url"`
QRcodeType int64 `json:"QRcodeType"`
}
type UploadQrcodeRsp {
Link string `json:"link"`
Data string `json:"d"`
}