2017-11-27 16 views
1

Ich habe ein Problem mit dem Hochladen eines Bildes von meiner Kamerarolle oder meiner API. Hier ist der Code, den ich gerade verwende. Ich bin in der Lage, die Bilddaten von der Kamerarolle und von der Kamera zu erhalten. Ich habe gerade ein Problem, die Daten auf dem Server zu veröffentlichen. Ich weiß nicht, wo das Problem ist. Aber ich dachte, es gibt ein Problem in meinem formData()Native Image-Upload mit fetch-Post reagieren, aber das Problem?

Auch in fortgeschrittenem ich überprüfe meine API es funktioniert, wenn ich das Bild von Postboten oder erweiterte Rest-Client dann hochfährt es perfekt funktioniert. Ich weiß nicht, warum es nicht funktioniert mit reagieren native.

Version ich verwende

"reagieren": "16.0.0-beta.5", "reagieren-native": "0.49.5", "reagieren-native-Kamera-Kit": "^ 5.3.14"

Mein Code für die Einreichung des Foto-Server

onFormSubmit = (e) => {

var photo = { 
    uri: this.state.uri[0].uri, == image path file:///storage/emulated/0/Pictures/1511787860629.jpg 
    type: 'image/jpeg', 
    name: 'photo.jpg', 
    size: this.state.uri[0].size,==> size of image 
}; 
var form = new FormData(); 
form.append("imageLink", photo); 

const config = { 
method: 'POST', 
headers: { 
    'Accept': 'application/json', 
    'Content-Type': 'multipart/form-data', 
}, 
body: form, 
} 

fetch("http://localhost:port/api/User/imageUpload", config) 
.then((responseData) => { 
    // Log the response form the server 
    // Here we get what we sent to Postman back 
    console.log(responseData); 
}) 
.catch(err => { 
    console.log(err); 
}) 

}

Und api mir diesen Fehler zurück ==> { "status": 400, "Fehler": "Bad Request", "message": "Invalid content-type-Header: mehrteiliger fehlende Grenze"}

+0

Auch ich versuchte mit Xhr und Axios mit Inhaltstyp undefined, aber keiner funktioniert für mich –

+0

Geben Sie nicht 'Content-Type' überhaupt an. – 10101010

+0

Auch wenn ich den Content-Typ nicht angegeben habe, habe ich ein anderes Problem, aber keinen Erfolg. {"statusCode": 400, "error": "Fehlerhafte Anfrage", "message": "path ist nicht erlaubt. bytes ist nicht erlaubt"} –

Antwort

0

Versuchen Sie, Ändere deine localhost Adresse mit der Computer IP und überprüfe ob es funktioniert.

Verwandte Themen