HarmonyOS 鸿蒙Next 上传图片到服务器报错:.Code:13400001,message: file operation error
求指点, 没搞明白错哪里了 … Failedtorequesttheupload.Code:13400001,message: file operation error
// 拉起系统图库
const photoViewPicker = new photoAccessHelper.PhotoViewPicker();
photoViewPicker.select(photoSelectOptions)
.then((photoSelectResult: photoAccessHelper.PhotoSelectResult) => {
this.imageArray = photoSelectResult.photoUris;
photoSelectResult.photoUris.forEach((uri) => {
const file = fs.openSync(uri, fs.OpenMode.READ_ONLY);
const uploadFileName = new Date().getTime() + '.jpg';
const filePath = cacheDir + '/' + uploadFileName;
fs.copyFileSync(file.fd, filePath);
fs.closeSync(file);
this.uploadImage(uploadFileName);
})
})
.catch((err: BusinessError) => {
console.error(`Invoke photoViewPicker.select failed, code is ${err.code}, message is ${err.message}`);
})
//上传
uploadImage(uploadFileName:string){
let uploadTask: request.UploadTask;
let uploadConfig: request.UploadConfig = {
url: baseUrl+ 'third/obs/attachment/fileUpload/app',
header: {
"Content-Type":"multipart/form-data",
"Authorization":`Bearer ${user_token}`
},
method: 'POST',
files: [
{
filename: 'feedback',
name: 'file',
uri: `internal://cache/${uploadFileName}`,
type: 'jpg'
}
],
data: []
}
console.log('uploadConfig', JSON.stringify(uploadConfig))
try {
//上传请求
request.uploadFile(getContext(), uploadConfig, (err: BusinessError, data: request.UploadTask) => {
if (err) {
console.error(`Failedtorequesttheupload.Code:${err.code},message:${err.message}`);
return;
}
uploadTask = data;
});
} catch (err) {
console.error(`Failedtorequesttheupload.err:${JSON.stringify(err)}`);
}
}
更多关于HarmonyOS 鸿蒙Next 上传图片到服务器报错:.Code:13400001,message: file operation error的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
从代码上看好像没什么问题的,最好再确认一下以下信息
1.是否是真机调试(模拟器可能存在问题),有无完整错误日志
2.是否有网络权限
3.on('complete'|'fail')获取下上传时的错误信息
更多关于HarmonyOS 鸿蒙Next 上传图片到服务器报错:.Code:13400001,message: file operation error的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
感谢大佬回复,目前用的是模拟器,手上没有真机… 网络权限是有的 .
[request_service_proxy.cpp Create 77] End send create request, failed: 13400001 [request_manager_impl.cpp Create 74] Request create, seq: 0, failed: 13400001 [js_task.cpp CreateExec 202] End create task in JsTask CreateExec, seq: 0, failed: 13400001 [js_task.cpp operator() 157] End task create in AsyncCall output, seq: 0, failed:13400001 [napi_utils.cpp operator() 633] errorCode: 13400001, errInfo: Failedtorequesttheupload.Code:13400001,message: file operation error
模拟器不行,真机可以,我试过了
希望HarmonyOS能加强与其他品牌设备的兼容性,让更多人受益。
明白了 , 感谢
在HarmonyOS 鸿蒙Next系统中上传图片到服务器遇到错误代码13400001,错误信息为“file operation error”,这通常指示在文件操作过程中出现了问题。可能的原因包括:
-
文件路径错误:检查你指定的图片文件路径是否正确,确保文件存在于该路径下,并且应用有权限访问该路径。
-
文件权限问题:确认应用具有读取和写入文件的权限。在HarmonyOS中,应用需要声明相应的权限才能访问文件系统。
-
文件状态异常:文件可能被其他进程锁定或正在使用中,导致无法执行上传操作。
-
文件损坏或格式不支持:确保上传的图片文件未损坏且格式符合服务器要求。
-
服务器配置问题:检查服务器是否接受文件上传,以及是否有大小、类型等限制。
-
网络问题:确认网络连接稳定,且服务器地址和端口配置正确。
解决这些问题后,重新尝试上传图片。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html