file 接口
启用
xxx.ts
import { getFileUrl } from "@knockout-js/api";
export default () => {
const url = await getFileUrl(path)
}
api
api中的 endpoint bucket 两个非必填参数都是默取fileSource isDefault=true里的配置,如果有需要调整可直接设置覆盖
getFileUrl
获取文件url
function getFileUrl(path: string, options?: {
expiresIn?: number;
inBrowser?: boolean;
endpoint?: string;
bucket?: string;
}): Promise<string | undefined>
getFileRaw
获取s3输出对象方便外部调用后自行对处理
function getFileRaw(path: string, options?: {
endpoint?: string;
bucket?: string;
}): Promise<GetObjectCommandOutput | null>
uploadFile
上传
function uploadFile(file: File, dir: string, options?: {
endpoint?: string;
bucket?: string;
useFileName?: boolean;
custromFileName?: string;
}): Promise<{
path: string;
} | null>
delFile
删除
function delFile(path: string, options?: {
endpoint?: string;
bucket?: string;
}): Promise<true | null>
setStsApi
修改sts api地址 默认请求地址:/api-s3/oss/sts
function setStsApi(api: string): void
getStorageUrl
根据path得到需要存储在数据库的url,方便后续解析处理
function getStorageUrl(path: string, options?: {
endpoint?: string;
bucket?: string;
}): Promise<string | undefined>
parseStorageUrl
存储在数据库的url转换成可展示的url
function parseStorageUrl(storageUrl: string, options?: {
expiresIn?: number;
inBrowser?: boolean;
endpoint?: string;
bucket?: string;
}): Promise<string | undefined>
parseStorageData
存储在数据库的url转换成想要的关键的UploadFileRes信息
type UploadFileRes = {
path: string;
storageUrl: string;
url: string;
name: string;
}
function parseStorageData(storageUrl: string, options?: {
expiresIn?: number;
inBrowser?: boolean;
endpoint?: string;
bucket?: string;
}): Promise<UploadFileRes | undefined>