响应本机-图像上传:Node Post API未通过获取调用

时间:2019-05-15 15:46:27

标签: node.js react-native fetch expo image-upload

我正在尝试使用fetch将用户选择的图像发布到node js API。但是由于某种原因,与Postman一起使用时,API post方法没有被调用。

在Expo应用程序中运行解决方案时会发生这种情况。为了消除本地主机是罪魁祸首的可能性,已使用ngrok https url来发布请求。

此外,尝试将content-type设置为undefined / null / multipart / form-data,但似乎没有任何帮助实现Post API调用。

const createFormData = (photo, body) => 
{
  const data = new FormData();

  data.append("photo", {
  name: photo.fileName,
  type: photo.type,
  uri:
     Platform.OS === "android" ? 
     photo.uri 
     : photo.uri.replace("file://", "")
    });


Object.keys(body).forEach(key => {
   data.append(key, body[key]);
});

  return data;
};


handleUploadPhoto = () => {

  fetch("http://ngrok:3000/api/upload", 
  {
     method: "POST",
     headers: { "Content-Type" : 
                "multipart/form-data", 
                "Accept": 
                "application/json"},
     body: 
        createFormData(this.state.photo, 
        { userId: "123" })
   });
 };

上面的代码运行时,应用程序不会引发错误,但似乎也不会发出发布请求。

0 个答案:

没有答案