fs = require 'fs' http = require 'http' temp = require 'temp' # npm install getTemporaryFilePathFromURL = ( url, callback ) -> temp.open 'temp-image', (err, info) -> stream = fs.createWriteStream info.path http.get url, ( res ) -> res.on 'data', (chunk) -> console.log 'got chunk of size ' + chunk.length stream.write chunk res.on 'end', () -> console.log 'done' stream.end() fs.close info.fd, (err) -> callback info.path module.exports = getTemporaryFilePathFromURL : getTemporaryFilePathFromURL