繁体   English   中英

React Native fetch API POST 文件 - 网络请求失败

[英]React Native fetch API POST file - Network Request Failed

我正在尝试执行以下操作:

  1. 使用 Expo 在我的移动设备上的 React Native 应用程序中选择一个文件
  2. 使用我的应用程序 API 和 React Native 中内置的 fetch API 将该文件发送到我的 PHP(Laravel)服务器

该文件是 XML 格式的 .config 文件。 我的代码如下:

const XHR = new XMLHttpRequest(),
FD  = new FormData();

FD.append('xmldata', this.state.file);
FD.append('meterid', 113);

XHR.addEventListener('load', function(event) {
    console.log('SUCCESS');
});

XHR.addEventListener(' error', function(event) {
    alert('Error');
});

XHR.onreadystatechange = function () {
    console.log(XHR.status);
};

XHR.open('POST', MY_API_URL);

XHR.send(FD);

我的代码可在 iOS 上运行,但无法在 Android 设备上运行。 当我在 Android 上运行此代码时,它挂起并且不给我任何响应。 有谁知道我哪里出错了? 提前致谢。

我在选择文件后通过显式设置文件类型设法解决了这个问题。 我选择文件的代码现在如下:

let result = await DocumentPicker.getDocumentAsync({});
result.type = "application/config";

this.setState({
    file: result
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM