HarmonyOS 不在cache目录下的文件怎么上传?
从相册选择的图片需要做上传,但是使用系统提供的上传方法,发现只有cache目录下的文件才能上传成功,请问非cache目录下的文件如果上传?
参考文档:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/app-file-upload-download-V5
代码如下:
地址:file://media/Photo/3/IMG_1710398715_002/IMG_2024314_144335.jpg
错误码:Invoke uploadFile failed, code is 401, message is the parameters check fails this is fail path
// 上传任务配置项
let header = new Map<Object, string>();
header.set('appKey', this.tokenBean?.cystorageAppKey ?? '');
header.set('token', this.tokenBean?.securityToken ?? '');
header.set('contextId', this.tokenBean?.contextId ?? '');
header.set('expires', expires);
let files: Array<request.File> = [
{ filename: fileName, name: 'file', uri: 'file://media/Photo/1/IMG_1706403774_000/screenshot_20240128_090114.jpg', type: 'jpg' }
]
let data: Array<request.RequestData> = [{ name: 'name', value: 'value' }];
let uploadConfig: request.UploadConfig = {
url: uploadUrl,
header: header,
method: 'POST',
files: files,
data: data
}
// 将本地应用文件上传至网络服务器
try {
request.uploadFile(this.inputBean?.context!, uploadConfig)
.then((uploadTask: request.UploadTask) => {
uploadTask.on('complete', (taskStates: Array<request.TaskState>) => {
for (let i = 0; i < taskStates.length; i++) {
console.info(`upload complete taskState: ${JSON.stringify(taskStates[i])}`);
}
});
})
.catch((err: BusinessError) => {
console.error(`Invoke uploadFile failed, code is ${err.code}, message is ${err.message}`);
})
} catch (error) {
let err: BusinessError = error as BusinessError;
console.error(`Invoke uploadFile failed, code is ${err.code}, message is ${err.message}`);
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS 加载cache目录下的PDF文件异常17100003
553浏览 • 1回复 待解决
HarmonyOS C++可以读取到cache目录下面的文件吗?
1097浏览 • 1回复 待解决
java怎么读取公共目录下的文件?
3145浏览 • 1回复 待解决
HarmonyOS 怎么读取手机公共目录下的文件
1024浏览 • 1回复 待解决
HarmonyOS 怎么获取文件公共目录,将文件下载放在公共目录下
1219浏览 • 1回复 待解决
HarmonyOS resfile或rawfile目录下的文件怎么查看
1463浏览 • 1回复 待解决
HarmonyOS ArkTS怎么读取指定目录下的所有文件
2081浏览 • 1回复 待解决
HarmonyOS 如何播放resources目录下rawfile目录下的wav音频文件
806浏览 • 1回复 待解决
HarmonyOS 下载的文件如何存到公用目录下
1724浏览 • 1回复 待解决
鸿蒙如何读取resources目录下的文件
4500浏览 • 1回复 待解决
HarmonyOS app rawfile目录下的文件怎么传递给SA服务访问
555浏览 • 1回复 待解决
#鸿蒙通关秘籍#朋友们,应用文件目录下的文件和系统文件目录下的文件有啥区别?
749浏览 • 1回复 待解决
HarmonyOS 上传应用文件时,是否只支持cache文件夹下的文件?
793浏览 • 1回复 待解决
HarmonyOS dataPreferences存储的文件在哪个目录下
859浏览 • 1回复 待解决
如何获取工程目录下的json文件?
1726浏览 • 1回复 待解决
HarmonyOS 如何在代码中读取目录下的文件
702浏览 • 1回复 待解决
HarmonyOS如何判断项目目录下的文件是否存在?
2212浏览 • 1回复 待解决
HarmonyOS如何加载rawfile目录下的音频文件
1309浏览 • 1回复 待解决
使用controller.loadData, rawfile 目录下的js文件的路径怎么取
3251浏览 • 1回复 待解决
请问鸿蒙开发如何访问公共目录的文件或者其他应用目录下的文件
6387浏览 • 2回复 待解决
canvas怎么绘制资源目录下的图片
1494浏览 • 1回复 待解决
HarmonyOS 如何获取resources目录下rawfile中的json文件?
793浏览 • 1回复 待解决
遍历目录中所有文件,遍历指定目录,获取当前目录下所有文件,并通过页面展示文件列表。
2230浏览 • 1回复 待解决
资源目录下的文件到沙箱的单向流动
1994浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何读取和复制下载目录下的文件到沙箱目录?
978浏览 • 1回复 待解决
将公共路径的文件(picker选择),拷贝至沙箱路径中,可完成上传。
Demo:
可以尝试订阅服务端请求信息,获取的headers中包含有header和body
https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-request-V5#onheaderreceive7