Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-ui
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-ui
Commits
c8221a8a
提交
c8221a8a
authored
2月 12, 2025
作者:
lidongxu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(plan): 上传计划表格到 OSS
通农商
上级
0b933ecd
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
13 行增加
和
39 行删除
+13
-39
upload.js
src/api/common/upload.js
+13
-39
没有找到文件。
src/api/common/upload.js
浏览文件 @
c8221a8a
import
request
from
'@/utils/request'
import
request
from
'@/utils/request'
import
OSS
from
'ali-oss'
import
OSS
from
'ali-oss'
const
ossAuthURL
=
`
${
import
.
meta
.
env
.
VITE_APP_PROMOTION
}
/user/aliyun/s
ignature
`
// 后台获取阿里云 OSS 权限信息接口
const
ossAuthURL
=
`
${
import
.
meta
.
env
.
VITE_APP_PROMOTION
}
/user/aliyun/s
ts_token
`
// 后台获取阿里云 OSS 权限信息接口
const
ossPublickURL
=
import
.
meta
.
env
.
VITE_APP_OSS_PUBLIC_URL
// OSS 公共域名
const
ossPublickURL
=
import
.
meta
.
env
.
VITE_APP_OSS_PUBLIC_URL
// OSS 公共域名
import
{
v4
as
uuidv4
}
from
'uuid'
;
import
{
v4
as
uuidv4
}
from
'uuid'
;
import
store
from
'@/store'
import
store
from
'@/store'
...
@@ -12,50 +12,25 @@ export const uploadFileToOSSAPI = (fileName, filePath) => {
...
@@ -12,50 +12,25 @@ export const uploadFileToOSSAPI = (fileName, filePath) => {
baseURL
:
ossAuthURL
,
baseURL
:
ossAuthURL
,
url
:
''
url
:
''
})
})
const
{
policy
,
security_token
:
xOssSecurityToken
,
signature
:
xOssSignature
,
x_oss_credential
:
xOssCredential
,
x_oss_date
:
xOssDate
,
x_oss_signature_version
:
xOssSignatureVersion
}
=
authRes
.
data
;
const
{
accessKeyId
,
securityToken
,
accessKeySecret
,
expiration
,
region
,
web_js_link
}
=
authRes
.
data
;
const
client
=
new
OSS
({
const
client
=
new
OSS
({
//
yourRegion填写Bucket所在地域。
//
Bucket 所在地域
region
:
'oss-cn-shanghai'
,
region
:
`oss-
${
region
}
`
,
// 从
STS服务获取的临时访问密钥(AccessKey ID和AccessKey Secret)。
// 从
STS 服务获取的临时访问密钥(AccessKey ID 和 AccessKey Secret)
accessKeyId
:
'yourAccessKeyId'
,
accessKeyId
:
accessKeyId
,
accessKeySecret
:
'yourAccessKeySecret'
,
accessKeySecret
:
accessKeySecret
,
// 从STS服务获取的安全令牌(SecurityToken)。
// 从STS服务获取的安全令牌(SecurityToken)。
stsToken
:
xOssS
ecurityToken
,
stsToken
:
s
ecurityToken
,
// 刷新临时访问凭证的时间间隔,单位为毫秒。
// 刷新临时访问凭证的时间间隔,单位为毫秒。
refreshSTSTokenInterval
:
300000
,
refreshSTSTokenInterval
:
expiration
,
// 填写Bucket名称。
// 填写Bucket名称。
bucket
:
'examplebucket'
bucket
:
web_js_link
});
});
// 发送请求上传文件 (文件名包含路径文件夹名字)
const
res
=
await
client
.
put
(
`planExcel/
${
store
.
state
.
name
}
/
${
uuidv4
()}
-`
+
fileName
,
filePath
)
resolve
(
res
.
url
)
// 上传成功
//上传参数
const
fd
=
new
FormData
();
fd
.
append
(
'key'
,
`planExcel/
${
store
.
state
.
name
}
/
${
uuidv4
()}
/`
+
fileName
);
fd
.
append
(
'policy'
,
policy
);
fd
.
append
(
'x-oss-signature-version'
,
xOssSignatureVersion
);
fd
.
append
(
'x-oss-credential'
,
xOssCredential
);
fd
.
append
(
'x-oss-date'
,
xOssDate
);
fd
.
append
(
'x-oss-signature'
,
xOssSignature
);
fd
.
append
(
'x-oss-security-token'
,
xOssSecurityToken
);
fd
.
append
(
'success_action_status'
,
"200"
);
fd
.
append
(
'file'
,
filePath
)
// 发送请求上传文件
const
res
=
await
request
({
url
:
`https://
${
authRes
.
data
.
web_js_link
}
`
,
data
:
fd
,
method
:
'PUT'
,
header
:
{
'Content-Type'
:
'multipart/form-data'
}
});
if
(
res
.
statusCode
===
200
)
{
console
.
log
(
'上传成功地址'
,
ossPublickURL
+
fileName
)
resolve
(
ossPublickURL
+
fileName
)
// 上传成功
}
else
{
reject
(
res
)
// 上传失败,返回响应
}
})
})
}
}
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论