const Promise = require('bluebird');
const request = Promise.promisify(require('request'));
const fs = require('fs');
const getFileHash = function (filepath, type, start, end) {
return new Promise((resolve, reject) => {
const shasum = crypto.createHash(type);
const s = fs.createReadStream(filepath, { start, end });
s.on('data', (d) => {
shasum.update(d);
});
s.on('end', () => {
const d = shasum.digest('hex');
resolve(d);
});
s.on('error', (err) => {
reject(err);
});
});
}
async function upload() {
const md5 = await getFileHash('./thumb.jpg', 'md5')
request({
method: 'POST',
headers: { 'content-type': 'multipart/form-data' },
uri: 'https://api.om.qq.com/video/authvideopic',
formData: {
access_token:"******",
openid:"*****",
md5:,
media: fs.createReadStream('./thumb.jpg'),
vid: '*****',
}
}).then(res => {
console.log(res.body)
})
}