Express - Rendite von binäre Daten aus entfernten webservice
Ich versuche wieder einige binären Daten mit Express. In dem Beispiel, es ist ein PDF, aber theoretisch, dies kann jede Art von Datei.
Sondern konzentrieren sich auf die pdf-Datei für den moment. Ich schrieb diesen code :
app.get('*', function (req, res) {
getBinaryData(req.url,
function (answer) {
res.type('pdf');
res.end(new Buffer(answer, 'binary'));
},
function (error) {
res.setHeader('Content-Type', 'text/plain');
return res.end(error);
}
);
});
Basierend auf dem, was ich hier gesehen habe : https://github.com/strongloop/express/issues/1555
Aber, ich bekomme eine pdf-Datei mit der richtigen Anzahl von Seiten, die richtigen Titel.... aber alle Seiten sind leer
Ich bin mir sicher, dass Anliegen, die Rückkehr der getBinaryData(), weil diese Funktion gebeten, einen externen Web-Service und als ich Sie direkt gefragt, diesen service, ich habe das richtige Dokument.
Vielen Dank im Voraus für Eure Antworten
res.sendFile
Methode?Ursache, die ich nicht habe die Datei : bekomme ich diese binäre Inhalte von einem anderen WebService. Schließlich kann ich eine temp-Datei, und verwenden sendFile...
InformationsquelleAutor Varkal | 2015-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist mein etwas aufgeräumt version von, wie Rückkehr binäre Dateien mit dem Express. Ich gehe davon aus, dass die Daten in ein Objekt, das erklärt werden kann als binäre und hat eine Länge:
res.end(new Buffer(data), 'binary')
beachten Sie, dass new Buffer() ist veraltet und es Sicherheitsprobleme haben.
InformationsquelleAutor Michael Shopsin
Fand ich eine einfache Lösung :
Diese Rohre die original-Antwort aus dem Fernen Web-Service direkt auf meine Antwort! Ich habe die richtige Datei, unabhängig von der Art der Datei.
Danke Mann funktioniert 🙂
In welcher Bibliothek kann verlangen lib befinden, für die Anforderung(req.- url).Rohr(res)?
Ich denke, es ist dieses: npmjs.com/package/request
InformationsquelleAutor Varkal