我正在尝试使用 XHR 和以下代码将 multipart/form-data 从 React Native(在模拟器上运行)发送到后端服务器
let xhr = new XMLHttpRequest();
xhr.open('POST', 'http://....url....');
let formdata = new FormData();
formdata.append('title','This is awesome');
xhr.send(formdata);
但是在控制台日志中,请求负载显示为[object Object]
因此,我决定采用相同的代码并将其放入 HTML 文件中,然后从 Chrome 浏览器运行,控制台日志中的请求有效负载如下所示,这是我期望从 React Native 中得到的
------WebKitFormBoundaryGXwudBdBkJzBnPug
Content-Disposition: form-data; name="title"
This is awesome
------WebKitFormBoundaryGXwudBdBkJzBnPug--
最佳答案
我也遇到了同样的问题,经过一天的研究,我发现我们必须应用一个 polyfill,因为 React Native 环境与你在浏览器或 Node.js 中找到的环境不同。
将此行放入您的主索引文件中,您应该会很好:
global.FormData = global.originalFormData ? global.originalFormData : global.FormData;
对于 TypeScript 首先定义 global
:
declare const global: any;
关于javascript - React Native XHR multipart/form-data 将数据发送为 [object Object],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44520812/