在Android上粘贴图片后,使用 FormData()和获取()将帖子和图像文件发布到我的服务器。
我使用的公共IP没有发布到我的localhost或任何东西而且没有使用HTTPS,也使用Genymotion Emulator。
我的代码:
var fd = new FormData();
fd.append('image', {path:'file:///'});
fetch(UPLOAD_URI,{
method: 'POST',
headers: {
'Content-Type': 'multipart/form-data',
},
body: fd
}).then(response => {
console.log("image uploaded")
}).catch(err => {
console.log(err)
})
错误返回在catch中作为参数错误:
TypeError: Network request failed
at XMLHttpRequest.xhr.onerror (fetch.js:441)
at XMLHttpRequest.dispatchEvent (event-target.js:172)
at XMLHttpRequest.setReadyState (XMLHttpRequest.js:542)
at XMLHttpRequest.__didCompleteResponse (XMLHttpRequest.js:378)
at XMLHttpRequest.js:482
at RCTDeviceEventEmitter.emit (EventEmitter.js:181)
at MessageQueue.__callFunction (MessageQueue.js:236)
at MessageQueue.js:108
at guard (MessageQueue.js:46)
at MessageQueue.callFunctionReturnFlushedQueue (MessageQueue.js:107)
是否缺少某种权限,问题是什么?
干杯,
答案 0 :(得分:0)
对于我在android上的案例,以下模块帮助我解决了这个问题,因为它使用java将我的文件发送到服务器并在PHP中使用$ _FILES获取:
getAttribute
我的代码:
npm install react-native-file-transfer-android
干杯。