2016-07-05 1 views
0

Hallo, ich frage mich, ob jemand kann mir ein Bild von einem Kameramodul von nativescript durch einen NodeJS Server, nutzt formidable js genommen helfen laden Eingaben verarbeitenNativescript ein Bild auf einem NodeJS Server hochladen, die formidable verwendet Eingaben zu verarbeiten

Hier ist mein nativescript Code unten: enter image description here

Hier ist der NodeJS Server-Code unten: enter image description here

versucht das Bild ToBase64String ("JPG") umwandelt, immer noch nicht funktioniert (Code unten :) enter image description here

NodeJS Server Ausgabe enter image description here

Aber es scheint, dass mein nativescript Code nicht

funktioniert
+0

Verwenden Sie Code-Schnipsel anstelle von Screenshots, um die Code-Reproduktion zu erleichtern. Wo base64 und utf8 herkommen (nicht Teil des NativeScript APi) Auch lesen Sie Text aus einer Bilddatei (nicht sicher, ob das wie erwartet funktioniert). Sie können Ihr Bild soure mit toBase64String verwenden, um base64 zu generieren https://docs.nativescript.org/api-reference/classes/_image_source_.imagesource.html#tobase64string –

+0

@NickIliev hat versucht, mein Bild in base64 zu konvertieren, es funktioniert immer noch nicht, der Server empfängt immer noch nichts :( –

+0

versuchen Sie, auf einem bekannten Dummy-Server wie httpbin oder anderen bekannten Dienst zu testen. Versuchen Sie auch, den Server Fehler oder Antwort zu protokollieren –

Antwort

2

Hier ist eine sehr einfache Art und Weise eine Bildquelle aus dem cameraModule zu base64String und von der zu konvertieren übergeben Sie es an Ihren Server

cameraModule.takePicture().then(function(imageSource) { 
    var imageAsBase64String = imageSource.toBase64String("JPG"); 
    return imageAsBase64String; 
}).then(function (imageAsBase64String) { 
    http.request({ 
     url: "https://httpbin.org/post", 
     method: "POST", 
     headers: { "Content-Type": "application/json" }, 
     content: JSON.stringify({ name: "myName", imageAsString: imageAsBase64String }) 
    }).then(function (response) { 
     var result = response.content.toJSON(); 

     console.log("args: " + result.args); 
     console.log("origin: " + result.origin); 
     console.log("headers: " + result.headers); 
     console.log("json: " + result.json); 
     console.log("url: " + result.url); 
     // console.log("data: " + result.data); // this is our send content 

     var myObj = JSON.parse(result.data); // as we are passing a stringied JSON we ahve to parse it 
     console.log("my Image Name: " + myObj.name); 
     console.log("my Image Base64String: " + myObj.imageAsString); 

    }, function (e) { 
     console.log("Error occurred " + e); 
    }); 
}) 
Verwandte Themen