diff options
-rw-r--r-- | lib/mime.json | 8 | ||||
-rw-r--r-- | lib/storage.js | 9 |
2 files changed, 14 insertions, 3 deletions
diff --git a/lib/mime.json b/lib/mime.json new file mode 100644 index 0000000..61d8a95 --- /dev/null +++ b/lib/mime.json @@ -0,0 +1,8 @@ +{ + ".m4a": "audio/mp4", + ".mp3": "audio/mpeg", + ".mp4": "video/mp4", + ".pdf": "application/pdf", + ".wav": "audio/wav", + ".webm": "video/webm" +} diff --git a/lib/storage.js b/lib/storage.js index 3d9f50b..dab04a0 100644 --- a/lib/storage.js +++ b/lib/storage.js @@ -8,8 +8,10 @@ var eos = require('end-of-stream') var EventEmitter = require('events').EventEmitter var FileStream = require('./file-stream') var inherits = require('inherits') +var mime = require('./mime.json') var MultiStream = require('multistream') var once = require('once') +var path = require('path') var sha1 = require('simple-sha1') var BLOCK_LENGTH = 16 * 1024 @@ -275,14 +277,15 @@ File.prototype.createReadStream = function (opts) { * the future. * @param {function} cb */ -File.prototype.getBlobURL = function (cb, mimetype) { +File.prototype.getBlobURL = function (cb) { var self = this if (typeof window === 'undefined') throw new Error('browser-only method') self.getBuffer(function (err, buffer) { if (err) return cb(err) - var blob = mimetype - ? new window.Blob([ buffer ], { type: mimetype }) + var type = mime[path.extname(self.name)] + var blob = type + ? new window.Blob([ buffer ], { type: type }) : new window.Blob([ buffer ]) var url = window.URL.createObjectURL(blob) cb(null, url) |