feat(media): 对象存储 - 新增腾讯云 COS 与历史凭据兼容

Co-authored-by: MasterChiefCN <49179444+MasterChiefCN@users.noreply.github.com>
Co-authored-by: Codex <codex@openai.com>
Original-PR: https://github.com/ddcat-ai/open-ai-canvas/pull/218
This commit is contained in:
MasterChiefCN
2026-08-14 10:10:15 +08:00
committed by GitHub
parent 7f0229463e
commit 95cb4a39ee
16 changed files with 497 additions and 83 deletions

View File

@@ -25,7 +25,7 @@ export type RemoteResource = {
export type UserOSSSetting = {
enabled: boolean;
provider: "aliyun";
provider: "aliyun" | "tencent";
region: string;
endpoint: string;
bucket: string;
@@ -112,10 +112,10 @@ export async function getResourceOSSUrl(storageKey?: string) {
if (!id) throw new Error("当前媒体尚未上传到后端资源存储");
try {
const data = await request<{ url: string }>(api.get(`/resources/${encodeURIComponent(id)}/oss-url`));
if (!data.url) throw new Error("后端未返回 OSS 地址");
if (!data.url) throw new Error("后端未返回对象存储地址");
return data.url;
} catch (error) {
if (axios.isAxiosError<BackendEnvelope<unknown>>(error)) throw new Error(error.response?.data.msg || error.message || "获取 OSS 地址失败");
if (axios.isAxiosError<BackendEnvelope<unknown>>(error)) throw new Error(error.response?.data.msg || error.message || "获取对象存储地址失败");
throw error;
}
}