gpt4 book ai didi

ios - React-Native FormData 文件请求作为 [object Object] 发送到服务器

转载 作者:行者123 更新时间:2023-12-01 17:28:43 24 4
gpt4 key购买 nike

我目前使用的是 React Native 0.48 和 react-native-image-crop-picker 0.16。

我正在尝试获取文件 uri,并使用 FormData 和 Fetch 将其发送到服务器。

这是我正在做的代码片段:

var image = await ImagePicker.openPicker({
width: 500,
height: 500,
cropping: true,
includeBase64: true,
});

var media = {
uri: image.path,
type: 'image/jpeg',
name: 'file.jpg',
};

var formData = new FormData();
formData.append("file", media);

fetch("https://requestb.in/1e6lgdo1", {
method: 'post',
headers: {
'Content-Type': 'multipart/form-data',
},
body: formData
}).then(function(r){
console.log("Success", r);
}).catch(function(e){
console.log("Error", e);
}).done();

不幸的是,当请求被发送到服务器而不是发送"file"表单数据字段中的文件内容时,它只是发送“[对象对象]”。

根据您将请求发送到的位置,这会导致文件内容变为“[object Object]”或请求出错。

我无法确定这是我自己的代码的问题,还是 React Native 本身的问题。如有任何帮助,我们将不胜感激。

更新

我正在使用 https://github.com/jpillora/uploader对于我的测试服务器。 (注意:Go 在对对象进行字符串化时从不使用符号 [object Object],所以我不认为问题出在服务器上。此外,我在将文件上传到 S3 时也看到了这一点。)

一个请求最终被发送出去的例子是:

------WebKitFormBoundaryzt2jTR8Oh7dXB56z
Content-Disposition: form-data; name="file"

[object Object]
------WebKitFormBoundaryzt2jTR8Oh7dXB56z--

最佳答案

此问题与另一个包 React-Native Debugger 劫持获取请求有关,以便允许在调试器中进行检查。

有关解决方法的完整信息可在此处找到:https://github.com/jhen0409/react-native-debugger/issues/101

不过,通过返回到 Google Chrome 调试器,我能够成功绕过它。

关于ios - React-Native FormData 文件请求作为 [object Object] 发送到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46062783/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com