diff options
| author | 8cy <[email protected]> | 2020-04-03 02:48:28 -0700 |
|---|---|---|
| committer | 8cy <[email protected]> | 2020-04-03 02:48:28 -0700 |
| commit | f9159ea2d994e14180fb02ab562f0119513e67cf (patch) | |
| tree | 09d14cdf05456567156738b681379d4bccd64e5c /node_modules/http-basic/lib/file-cache.js | |
| parent | 2020/04/03, 02:42, V1.2.1 (diff) | |
| download | s5nical-f9159ea2d994e14180fb02ab562f0119513e67cf.tar.xz s5nical-f9159ea2d994e14180fb02ab562f0119513e67cf.zip | |
2020/04/03, 02:47, V1.2.2
Diffstat (limited to 'node_modules/http-basic/lib/file-cache.js')
| -rw-r--r-- | node_modules/http-basic/lib/file-cache.js | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/node_modules/http-basic/lib/file-cache.js b/node_modules/http-basic/lib/file-cache.js deleted file mode 100644 index 9b90582..0000000 --- a/node_modules/http-basic/lib/file-cache.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -var fs = require('fs'); -var path = require('path'); -var crypto = require('crypto'); -var Response = require('http-response-object'); - -module.exports = FileCache; -function FileCache(location) { - this._location = location; -} - -FileCache.prototype.getResponse = function (url, callback) { - var key = path.resolve(this._location, getCacheKey(url)); - - fs.readFile(key + '.json', 'utf8', function (err, res) { - if (err && err.code === 'ENOENT') return callback(null, null); - else if (err) return callback(err); - try { - res = JSON.parse(res); - } catch (ex) { - return callback(ex); - } - var body = fs.createReadStream(key + '.body'); - res.body = body; - callback(null, res); - }); -}; -FileCache.prototype.setResponse = function (url, response) { - var key = path.resolve(this._location, getCacheKey(url)); - var errored = false; - - fs.mkdir(this._location, function (err) { - if (err && err.code !== 'EEXIST') { - console.warn('Error creating cache: ' + err.message); - return; - } - response.body.pipe(fs.createWriteStream(key + '.body')).on('error', function (err) { - errored = true; - console.warn('Error writing to cache: ' + err.message); - }).on('close', function () { - if (!errored) { - fs.writeFile(key + '.json', JSON.stringify({ - statusCode: response.statusCode, - headers: response.headers, - requestHeaders: response.requestHeaders, - requestTimestamp: response.requestTimestamp - }, null, ' '), function (err) { - if (err) { - console.warn('Error writing to cache: ' + err.message); - } - }); - } - }); - }); -}; - -function getCacheKey(url) { - var hash = crypto.createHash('sha512') - hash.update(url) - return hash.digest('hex') -} |