HarmonyOS 鸿蒙Next 官方文档的文件上传运行后报错 {"code":200,"data":{"code":202,"data":""}}

HarmonyOS 鸿蒙Next 官方文档的文件上传运行后报错 {“code”:200,“data”:{“code”:202,“data”:""}}

参考的是上传下载-网络管理-接口参考(JS及TS API)-手机、平板、智慧屏和智能穿戴开发-JS API参考-HarmonyOS应用开发 | HarmonyOS

let file1 = { filename: "test", name: "test", uri: "internal://cache/test.jpg", type: "jpg" };
let data = { name: "name123", value: "123" };
let header = { key1: "value1", key2: "value2" };
let uploadTask;

request.upload({ 
    url: 'https://patch', 
    header: header, 
    method: "POST", 
    files: [file1], 
    data: [data] 
}).then((data) => {
    uploadTask = data;
}).catch((err) => {
    console.error('Failed to request the upload. Cause: ' + JSON.stringify(err));
})

下面是我参考官方的示例代码写的程序,运行后就会报错Failed to request the upload. Cause: {“code”:200,“data”:{“code”:202,“data”:""}}

identify(){
    prompt.showToast({
        message:"执行文件上传"
    })
    let photo = {
        filename: "test",
        name: "test",
        //uri: "internal://cache/test.jpg",
        uri: this.src,
        type: "jpg"
    };
    //let data = { name: "name123", value: "123" };
    //let header = { key1: "value1", key2: "value2" };
    let uploadTask;
    request.upload({
        url: 'http://43.138.48.60:8889/login/',
        //header: header,
        method: "POST",
        files: [photo],
        //data: [data]
    })
    .then((data) => {
        uploadTask = data;
    }).catch((err) => {
        console.error('Failed to request the upload. Cause: ' + JSON.stringify(err));
    })
}

更多关于HarmonyOS 鸿蒙Next 官方文档的文件上传运行后报错 {"code":200,"data":{"code":202,"data":""}}的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

楼主,你好,我这边试了下官方文档,可以正常使用。麻烦把完整代码发来看下,包括这个this.src和怎么调用这个方法

更多关于HarmonyOS 鸿蒙Next 官方文档的文件上传运行后报错 {"code":200,"data":{"code":202,"data":""}}的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


姓名:张三
职业:软件工程师
简介:具有五年软件开发经验,熟悉Java、Python和C++。

楼主,你好,遇到类似问题,把name值改为file解决,供参考

let file1 = { filename: “test”, name: “file”, uri: “internal://cache/test.jpg”, type: “jpg” };

楼主,你好,我用你的代码上传成功了,你可以换一个手机试一下

HML代码

JS代码import request from ‘@system.request’; import prompt from ‘@system.prompt’; import router from ‘@system.router’;

//import request from ‘@ohos.request’; export default { data: { title: ‘’, imgsrc:’/cache/’, }, cameraError(){ prompt.showToast({ message: “授权摄像头失败!” }); }, takePhoto(e){ var camera_take = this; var camera = this.$element(‘camera’); camera.takePhoto({ quality:‘high’, success(result){ console.info(’##-------------拍照成功回调------’+result) camera_take.src = result.uri console.log("##拍照成功路径==> "+camera_take.src); }, fail(result){ console.info(’##-------------拍照失败回调------’+result) }, complete(result){ console.info(’##-------------拍照结束回调------’+result) } }) this.src = camera_take.src; }, identify() { prompt.showToast({ message:“执行文件上传” }) let file1 = { filename: “file”, name: “file”, uri:“internal://cache/sun.png”, type: “png” }; let data = { name:“usr”, value: “zm” }; let header = { ‘Content-Type’:‘multipart/form-data’,}; let uploadTask; request.upload({ url: ‘http://43.138.48.60:8889/upload/’, method: “POST”, header:{ ‘Content-Type’:‘multipart/form-data’}, files: [file1], data: [data] }).then((data) => { uploadTask = data; }).catch((err) => { console.error('Failed to request the upload. Cause: ’ + JSON.stringify(err)); }) }

该问题正在定位分析中,请耐心等待

针对帖子标题中提到的HarmonyOS 鸿蒙Next官方文档文件上传运行后报错的问题,报错信息为{"code":200,"data":{"code":202,"data":""}},这里分析如下:

  1. 外层code 200:通常表示HTTP请求本身成功被服务器接收并处理。
  2. 内层code 202:这是业务逻辑层的返回码,具体含义需参照鸿蒙Next的官方API文档或错误码列表。在大多数API设计中,202可能表示请求已被接受处理,但尚未完成,或者是一个特定的业务错误码。
  3. data字段为空:没有提供具体的错误信息或描述,使得问题定位较为困难。

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

回到顶部