2017-12-14 4 views
0

I Lambda-Funktion verwenden eine Datei zu lesen und es strömt in NodeJS geschrieben unter einem anderen Namendie Datei mit anderen Namen Streaming NodeJS

http.get('https://www.blog.google/static/blog/images/google-200x200.7714256da16f.png', res=> res.pipe(fs.createReadStream('data.png'))); 

request('https://www.blog.google/static/blog/images/google-200x200.7714256da16f.png').pipe(fs.createWriteStream('data.png')) 

Es gibt mir folgende Fehlermeldung: read-only: Fehler: EROFS Dateisystem, öffnen 'data.png' bei Fehler (nativ)

Antwort

2

Dieser Fehler wird durch AWS Lambda-Umgebung verursacht. Standardmäßig wird Lambda im Verzeichnis /var/task ausgeführt. Aber es ist schreibgeschützt. Sie haben einen flüchtigen Speicher von 512 MB unter /tmp, der beschreibbar ist! Dies kann in der Dokumentation zu finden: http://docs.aws.amazon.com/lambda/latest/dg/limits.html

enter image description here

Das heißt, Sie haben Ihren Code zu ändern Datei in /tmp so schreiben:

http.get('https://www.blog.google/static/blog/images/google-200x200.7714256da16f.png', res=> res.pipe(fs.createReadStream('/tmp/data.png'))); 

request('https://www.blog.google/static/blog/images/google-200x200.7714256da16f.png').pipe(fs.createWriteStream('/tmp/data.png')) 
Verwandte Themen