如何将http文件上传?

问题场景:

需要一个request.upload的demo程序,用于上传用户头像

阅读 524
1 个回答

参考代码:

uploadImage() {
    let context1 = getContext(this) as common.UIAbilityContext;
    let uploadConfig1 = {
      url: 'http://127.0.0.1:8224/system/upload/upFile2',
      header: {"Content-Type":"multipart/form-data","Authorization":"" },
      method: 'POST',
      files: [
        { filename: 'test.jpg', name: 'file', uri: 'internal://cache/test.jpg', type: 'jpg' }
      ],
      data: [
        { name: 'test', value: '111' }
      ]
    }
    // 将本地应用文件上传至网络服务器
    try {
      request.uploadFile(context1, uploadConfig1)
        .then((uploadTask) => {
          uploadTask.on('complete', (taskStates) => {
            for (let i = 0; i < taskStates.length; i++) {
              console.info(`xx upload complete taskState: ${JSON.stringify(taskStates[i])}`);
              this.message = JSON.stringify(taskStates[i])
            }
          });
        })
        .catch((err) => {
          console.error(`xx Invoke uploadFile failed, code is ${err.code}, message is ${err.message}`);
          this.message = err.message
        })
    } catch (err) {
      console.error(`xx Invoke uploadFile failed, code is ${err.code}, message is ${err.message}`);
      this.message = err.message
    }
  }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进