使用react-native将图像上传到nodeJs服务器

发布于 2025-01-10 19:11:01 字数 767 浏览 0 评论 0原文

我想从react-native(没有expo的cli)上传图像到节点服务器,我尝试使用axios,formData提交的文件不能被multer识别,然后我尝试使用fetch工作图像存储在服务器中,但我得到承诺拒绝在前面:

const postDocument = (doc) => {
//i used react-native-document-picker to pick document(doc) i logged it and it works 
  const url =`${api}/sendImage`;
  const formData = new FormData();
  const id = uuid.v4()

  formData.append('id',id)
  formData.append('image', doc);
 const options = {
      method: 'POST',
      body: formData,
      headers: {
        Accept: 'application/json',
        'Content-Type': 'multipart/form-data',
      },
  };
  fetch(url, options).then((res)=>{
//getting promise rejection even without code but image is stored in backend
  }).catch(error=>{})
}

收到此错误:[TypeError:网络请求失败]

I want to upload an image from react-native (cli without expo) to a node server, i tried using axios with formData filed is not recognised by multer, then i tried with fetch that worked image was stored in server but i get promise rejection on front:

const postDocument = (doc) => {
//i used react-native-document-picker to pick document(doc) i logged it and it works 
  const url =`${api}/sendImage`;
  const formData = new FormData();
  const id = uuid.v4()

  formData.append('id',id)
  formData.append('image', doc);
 const options = {
      method: 'POST',
      body: formData,
      headers: {
        Accept: 'application/json',
        'Content-Type': 'multipart/form-data',
      },
  };
  fetch(url, options).then((res)=>{
//getting promise rejection even without code but image is stored in backend
  }).catch(error=>{})
}

getting this error : [TypeError: Network request failed]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

随风而去 2025-01-17 19:11:01

使用 rn-fetch-blob (react-native-cli 而不是 expo-cli)而不是 fetch 或 axios 为我解决了这个问题

using rn-fetch-blob (react-native-cli not expo-cli) instead of fetch or axios solved this for me

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文