首页 > 解决方案 > 将本机上传图像反应到 api 得到网络错误

问题描述

您好,我正在尝试使用表单数据将图像上传到 api,但出现网络错误

为什么我收到此错误我尝试手动输入图像类型但仍然无法从邮递员那里正常工作它没有任何问题


 async ImageFormData() {
    const {photo} = this.state;
    console.log(photo);
    const formData = new FormData();
    formData.append('file', {
      uri: photo.uri,
      type: 'image/jpeg',
      name: photo.name,
    });

    setTimeout(() => {
      this.setState({isLoading: true}, () => {
        this.uploadImage(formData);
      });
    }, 100);
  }

  async uploadImage(formData) {
    console.log(formData);
    const {cid, email, phone, name} = this.state;
    console.log(cid, email, phone, name);
    fetch(
      'api,
      {
        method: 'POST',
        headers: {
          'Content-Type': 'multipart/form-data',
        },
        body: formData,
      },
    )
      .then((response) => response.json())
      .then((responseJson) => {
        console.log(responseJson);
        this.info();
      })
      .catch((error) => {
        console.log(error);
      });
  }
}

TypeError:在 EventTarget.dispatchEvent (C:\feras\worker\node_modules\event) 的 EventTarget.xhr.onerror (C:\feras\worker\node_modules\whatwg-fetch\dist\fetch.umd.js:473) 网络请求失败-target-shim\dist\event-target-shim.js:818) 在 EventTarget.setReadyState (C:\feras\worker\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:575) 在 EventTarget.__didCompleteResponse ( C:\feras\worker\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:389) 在 C:\feras\worker\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:502 在 RCTDeviceEventEmitter.emit (C:\feras\worker\node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:189) 在 MessageQueue.__callFunction (C:\feras\worker\node_modules\react-native\Libraries\BatchedBridge\MessageQueue. js:425) 在 C:\feras\worker\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:112 在 MessageQueue.__guard (C:\feras\worker\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:373) 在 MessageQueue .callFunctionReturnFlushedQueue (C:\feras\worker\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:111)

标签: androidreactjsreact-nativefile-uploadmultipartform-data

解决方案


推荐阅读