HarmonyOS 鸿蒙Next axios如何上传本地图片文件到阿里云服务器

发布于 1周前 作者 h691938207 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next axios如何上传本地图片文件到阿里云服务器

在axios上传的方法中

axios.put(url, formData, { headers:headers, context:getContext() })
.then((response:AxiosResponse) => {
let str:string = JSON.stringify(response.data)
console.log(‘xxx Upload successful’);

}) .catch((error:BusinessError) => { console.error(‘xxx Upload failed:’, error); }); }

这里的formData应该传什么才可以,试过pathStr,fs.file,arrayBuffer都不行


更多关于HarmonyOS 鸿蒙Next axios如何上传本地图片文件到阿里云服务器的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

您再试试当上传的内容为ArrayBuffer时,参考文档示例:

https://gitee.com/openharmony-sig/ohos_axios#%E5%BD%93%E4%B8%8A%E4%BC%A0%E7%9A%84%E5%86%85%E5%AE%B9%E4%B8%BAarraybuffer%E6%97%B6%E7%94%A8%E6%B3%95%E5%A6%82%E4%B8%8B

请先测试接口能否够上传成功,注意请求方式和传参是否正确,axios上传文件,url仅支持“internal”协议类型。

若还是无法解决请提供完整demo

request.uploadFile 仅支持 internal://cacherequest.agent.create现在只支持context对应cache下的相对路径

更多关于HarmonyOS 鸿蒙Next axios如何上传本地图片文件到阿里云服务器的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙系统中,使用axios上传本地图片文件到阿里云服务器,可以通过以下步骤实现:

  1. 获取本地图片文件: 使用HarmonyOS的文件选择器API获取本地图片文件的URI。

  2. 读取文件内容: 通过文件管理器API读取图片文件的二进制内容。

  3. 构造FormData: 使用JavaScript的FormData对象,将图片文件的二进制内容以及必要的参数(如文件名、类型等)封装起来。

  4. 发送axios请求: 配置axios请求,设置headers中的Content-Typemultipart/form-data,并将FormData对象作为请求体发送至阿里云服务器的上传接口。

  5. 处理响应: 在axios请求的.then()方法中处理服务器返回的响应,如上传成功或失败的提示信息。

示例代码(简化版):

let formData = new FormData();
// 假设fileContent为读取到的图片文件二进制内容,fileName为文件名
formData.append('file', fileContent, fileName);

axios.post('阿里云服务器上传接口URL', formData, {
    headers: {
        'Content-Type': 'multipart/form-data'
    }
}).then(response => {
    // 处理上传成功响应
}).catch(error => {
    // 处理上传失败错误
});

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部