ek.uploadFile
将本地资源上传到服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data。
参数
参数 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
url | string | 是 | 服务器地址 | |
filePath | string | 是 | 要上传文件资源的路径 (本地路径) | |
name | string | 是 | 文件对应的 key,开发者在服务端可以通过这个 key 获取文件的二进制内容 | |
header | Object | 否 | HTTP 请求的 Header | |
formData | Object | 否 | HTTP 请求中其他额外的 form data | |
timeout | number | 60000 | 否 | 超时时间,单位为毫秒 |
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
成功返回
属性 | 类型 | 说明 |
---|---|---|
data | string | 服务器返回的数据 |
statusCode | number | 服务器返回的 HTTP 状态码 |
header | Object | 服务器返回的 HTTP Response Header |
返回值
Example
ts
const chooseImage = async () => {
const result = await ek.chooseImage({
count: 1,
sizeType: ['compressed'],
sourceType: ['album']
})
const filePath = result.tempFilePaths[0]
const key = filePath.substr(filePath.lastIndexOf('/') + 1)
ek.uploadFile({
url: 'https://example.com/upload',
name: 'file',
filePath,
formData: {
// cos auth
key,
success_action_status: 200,
Signature: 'abcd...',
'x-cos-security-token': 'abcd...',
'Content-Type': ''
},
success: res => {
const src = 'https://cdn.example.com/' + key
// <img :src="src" />
},
fail: err => {
console.log(err)
}
})
}