function getSHA(fileName) { return new Promise((resolve, reject) => { let hash = crypto.createHash("sha1"); let stream = fs.createReadStream(fileName); stream.on("error", err => reject(err)); stream.on("data", chunk => hash.update(chunk)); stream.on("end", () => resolve(hash.digest("hex"))); }); }
it('should allow stream.path that can not be parsed', function test() { const stream = fs.createReadStream(paths.audio); stream.path = '/?id=123'; // for example, 'http://example.com/?id=666' assert.doesNotThrow(function assertDoesNotThrow() { bot._formatSendData('file', stream); }); });
app.get("/", function(req, res) { res.writeHead(200, {'Content-Type': 'text/html'}); fs.createReadStream(opts.baseDir + '/index.html').pipe(res); });
async topicThumbAction() { const imageFile = this.file('scene_pic_url'); if (think.isEmpty(imageFile)) { return this.fail('保存失败'); } const that = this; const filename = '/static/upload/topic/' + think.uuid(32) + '.jpg'; const is = fs.createReadStream(imageFile.path); const os = fs.createWriteStream(think.ROOT_PATH + '/www' + filename); is.pipe(os); return that.success({ name: 'scene_pic_url', fileUrl: 'http://127.0.0.1:8360' + filename }); }
it('should send an attachment with a body (group)', function (done){ var body = "attach-" + Date.now(); var attach = []; attach.push(fs.createReadStream("test/data/test.txt")); attach.push(fs.createReadStream("test/data/test.png")); listen(done, function (msg) { return msg.type === 'message' && msg.body === body; }); api.sendMessage({attachment: attach, body: body}, groupChatID, function(err, info){ checkErr(done)(err); assert(groupChatID === info.threadID); }); });
/** * Let the client handle all other routes (only used in production) */ router.get('*', async ({ response }) => { const path = join(__dirname, '..', '..', 'dist', 'index.html') response.body = createReadStream(path) response.type = 'text/html' })
it('should handle buffer path from fs.readStream', function test() { let file; try { file = fs.createReadStream(Buffer.from(paths.audio)); } catch (ex) { // Older Node.js versions do not support passing a Buffer // representation of the path to fs.createReadStream() if (ex instanceof TypeError) { Promise.resolve(); return; } } const [{ [type]: data }] = bot._formatSendData('file', file); assert.equal(data.options.filename, path.basename(paths.audio)); });
const sha1 = path => new Promise((resolve, reject) => { const hash = crypto.createHash("sha1"); const rs = fs.createReadStream(path); rs.on("error", reject); rs.on("data", chunk => hash.update(chunk)); rs.on("end", () => resolve(hash.digest("hex"))); })
function getSHA(fileName) { return new Promise((resolve, reject) => { let hash = crypto.createHash("sha1"); let stream = fs.createReadStream(fileName); stream.on("error", err => reject(err)); stream.on("data", chunk => hash.update(chunk)); stream.on("end", () => resolve(hash.digest("hex"))); }); }
function getSHA(fileName) { return new Promise((resolve, reject) => { let hash = crypto.createHash("sha1"); let stream = fs.createReadStream(fileName); stream.on("error", err => reject(err)); stream.on("data", chunk => hash.update(chunk)); stream.on("end", () => resolve(hash.digest("hex"))); }); }
const sha1 = path => new Promise((resolve, reject) => { const hash = crypto.createHash("sha1"); const rs = fs.createReadStream(path); rs.on("error", reject); rs.on("data", chunk => hash.update(chunk)); rs.on("end", () => resolve(hash.digest("hex"))); })
function getSHA(fileName) { return new Promise((resolve, reject) => { let hash = crypto.createHash("sha1"); let stream = fs.createReadStream(fileName); stream.on("error", err => reject(err)); stream.on("data", chunk => hash.update(chunk)); stream.on("end", () => resolve(hash.digest("hex"))); }); }
function getSHA(filename) { return new Promise((resolve, reject) => { let hash = crypto.createHash("sha1"); let stream = fs.createReadStream(filename); stream.on("error", err => reject(err)); stream.on("data", chunk => hash.update(chunk)); stream.on("end", () => resolve(hash.digest("hex"))); }); }
app.get('/', function( req, res ) { res.writeHead( 200, { 'Content-Type': 'text/html' } ); fs.createReadStream( opts.baseDir + '/index.html' ).pipe( res ); });
async brandPicAction() { const brandFile = this.file('brand_pic'); if (think.isEmpty(brandFile)) { return this.fail('保存失败'); } const that = this; const filename = '/static/upload/brand/' + think.uuid(32) + '.jpg'; const is = fs.createReadStream(brandFile.path); const os = fs.createWriteStream(think.ROOT_PATH + '/www' + filename); is.pipe(os); return that.success({ name: 'brand_pic', fileUrl: 'http://127.0.0.1:8360' + filename }); }