first commit
This commit is contained in:
commit
3af3fe69f4
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
node_modules
|
321
bin/wangpan.js
Normal file
321
bin/wangpan.js
Normal file
@ -0,0 +1,321 @@
|
||||
const axios = require('axios');
|
||||
const fs = require('fs');
|
||||
const crypto = require('crypto');
|
||||
const FormData = require('form-data');
|
||||
const request = require("request")
|
||||
const https = require('https');
|
||||
const size = 4 * 1024 * 1024
|
||||
let promistlist = []
|
||||
let daxiao
|
||||
function getsize(url) {
|
||||
return new Promise((res, err) => {
|
||||
fs.stat("./a.exe", {}, (err, stats) => {
|
||||
|
||||
if (!err) {
|
||||
daxiao = stats.size
|
||||
let fenpian = Math.ceil(stats.size / size)
|
||||
res({
|
||||
size: daxiao,
|
||||
num: fenpian
|
||||
})
|
||||
} else {
|
||||
err("文件路径错误或文件不存在")
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
function getfile({ i, url }) {
|
||||
|
||||
return new Promise((res) => {
|
||||
let data = '';
|
||||
let start = i * size
|
||||
let end = (i + 1) * size - 1
|
||||
const stream = fs.createReadStream(url, {
|
||||
start,
|
||||
end
|
||||
})
|
||||
stream.on('data', (chunk) => {
|
||||
// console.log(`接收到 ${chunk.length} 个字节的数据`);
|
||||
if (!data) {
|
||||
data = chunk
|
||||
} else {
|
||||
data = Buffer.concat([data, chunk])
|
||||
}
|
||||
});
|
||||
stream.on('end', () => {
|
||||
res(data)
|
||||
});
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
function upgetfile({ i, url }) {
|
||||
i = parseInt(i)
|
||||
return new Promise((res) => {
|
||||
let data = '';
|
||||
const stream = fs.createReadStream(url, {
|
||||
start: i * size,
|
||||
end: (i + 1) * size - 1
|
||||
})
|
||||
// res(stream)
|
||||
stream.on('data', (chunk) => {
|
||||
// console.log(`接收到 ${chunk.length} 个字节的数据`);
|
||||
|
||||
if (!data) {
|
||||
data = chunk
|
||||
} else {
|
||||
data = Buffer.concat([data, chunk])
|
||||
}
|
||||
});
|
||||
stream.on('end', () => {
|
||||
res(data)
|
||||
});
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
async function getmd5list(url, info) {
|
||||
promistlist = []
|
||||
// fs.createReadStream
|
||||
for (let i = 0; i < info.num; i++) {
|
||||
let data = await getfile({ url, i })
|
||||
const hash = crypto.createHash('md5');
|
||||
hash.update(data);
|
||||
const md5 = hash.digest('hex');
|
||||
console.log(md5);
|
||||
promistlist.push(md5)
|
||||
}
|
||||
return promistlist
|
||||
}
|
||||
|
||||
async function precreate(info, url) {
|
||||
let block_list = await getmd5list(url, info)
|
||||
block_list = JSON.stringify(block_list)
|
||||
let data = {
|
||||
path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
size: info.size,
|
||||
isdir: 0,
|
||||
autoinit: 1,
|
||||
block_list,
|
||||
rtype: 1,
|
||||
|
||||
}
|
||||
let str = ""
|
||||
for (let i in data) {
|
||||
str += `${i}=${data[i]}&`
|
||||
}
|
||||
axios.post('https://pan.baidu.com/rest/2.0/xpan/file?method=precreate&access_token=121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ', str).then((res) => {
|
||||
upload({
|
||||
url,
|
||||
info,
|
||||
uploadid: res.data.uploadid,
|
||||
pian: res.data.block_list
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
function uploadfile(i,data,uploadid){
|
||||
return new Promise((r)=>{
|
||||
console.log(data.length)
|
||||
let urls = '/rest/2.0/pcs/superfile2?'
|
||||
let params = {
|
||||
access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
method: 'upload',
|
||||
type: "tmpfile",
|
||||
path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
uploadid,
|
||||
partseq: i
|
||||
}
|
||||
for (let j in params) {
|
||||
urls += j + '=' + params[j] + '&'
|
||||
}
|
||||
const options = {
|
||||
hostname: 'd.pcs.baidu.com',
|
||||
port: 443,
|
||||
path: urls,
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
'content-type':'multipart/form-data',
|
||||
'Content-Length': data.length
|
||||
}
|
||||
};
|
||||
|
||||
const req = https.request(options, (res) => {
|
||||
console.log('状态码:', res.statusCode);
|
||||
console.log('请求头:', res.headers);
|
||||
|
||||
res.on('data', (d) => {
|
||||
process.stdout.write(d);
|
||||
});
|
||||
r(1)
|
||||
});
|
||||
|
||||
req.on('error', (e) => {
|
||||
console.error(e);
|
||||
});
|
||||
req.write(data);
|
||||
req.end();
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
async function upload({ url, info, uploadid, pian }) {
|
||||
for (let i of pian) {
|
||||
let data = await upgetfile({ url, i })
|
||||
await uploadfile(i,data,uploadid)
|
||||
// var formData = new FormData();
|
||||
// formData.append('file', data);
|
||||
// console.log(formData.getBuffer())
|
||||
// headers['content-length'] = length;
|
||||
// const from = new FormData();
|
||||
// // const blob = Buffer.from(data);
|
||||
// from.append('file', data);
|
||||
// axios.post('https://d.pcs.baidu.com/rest/2.0/pcs/superfile2', {file: data}, {
|
||||
// headers: {
|
||||
// 'content-type': 'multipart/form-data; boundary=----WebKitFormBoundary' + new Date().getTime()
|
||||
// },
|
||||
// params: {
|
||||
// access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
// method: 'upload',
|
||||
// type: "tmpfile",
|
||||
// path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
// uploadid,
|
||||
// partseq: i
|
||||
// }
|
||||
// }).then((res) => {
|
||||
// console.log(res)
|
||||
// }).catch(err => {
|
||||
// console.log(err)
|
||||
// })
|
||||
// var headers = formData.getHeaders();
|
||||
// formData.getLength(async function (err, length) {
|
||||
// if (err) {
|
||||
// return;
|
||||
// }
|
||||
// //设置长度,important!!!
|
||||
// headers['content-length'] = length;
|
||||
// // let $upload = axios.create({ withCredentials: false });
|
||||
// // await $upload.post('https://d.pcs.baidu.com/rest/2.0/pcs/superfile2', formData, {
|
||||
// // headers,
|
||||
// // params: {
|
||||
// // access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
// // method: 'upload',
|
||||
// // type: "tmpfile",
|
||||
// // path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
// // uploadid,
|
||||
// // partseq: i
|
||||
// // }
|
||||
// // }).then((res) => {
|
||||
// // console.log(res)
|
||||
// // }).catch(err => {
|
||||
// // console.log(err)
|
||||
// // })
|
||||
// // await axios.post(data.url, formData, { headers }).then(res => {
|
||||
// // console.log("上传成功", res.data);
|
||||
// // }).catch(res => {
|
||||
// // console.log(res.data);
|
||||
// // })
|
||||
// let url = 'https://d.pcs.baidu.com/rest/2.0/pcs/superfile2?'
|
||||
// let params = {
|
||||
// access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
// method: 'upload',
|
||||
// type: "tmpfile",
|
||||
// path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
// uploadid,
|
||||
// partseq: i
|
||||
// }
|
||||
// for (let j in params) {
|
||||
// url += j + '=' + params[j] + '&'
|
||||
// }
|
||||
// request.post({
|
||||
// url, formData, function(err, httpResponse, body) {
|
||||
// if (err) {
|
||||
// return console.error('upload failed:', err);
|
||||
// }
|
||||
// console.log('Upload successful! Server responded with:', body);
|
||||
// }
|
||||
// })
|
||||
|
||||
// })
|
||||
// let urls = 'https://d.pcs.baidu.com/rest/2.0/pcs/superfile2?'
|
||||
// let params = {
|
||||
// access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
// method: 'upload',
|
||||
// type: "tmpfile",
|
||||
// path: encodeURI('/app/服务器备份/baidu.exe'),
|
||||
// uploadid,
|
||||
// partseq: i
|
||||
// }
|
||||
// for (let j in params) {
|
||||
// urls += j + '=' + params[j] + '&'
|
||||
// }
|
||||
// // console.log(urls)
|
||||
// request.post({
|
||||
// url: urls, form:{file: Buffer.from(data)}, function(err, httpResponse, body) {
|
||||
// console.log(111)
|
||||
// if (err) {
|
||||
// return console.error('upload failed:', err);
|
||||
// }
|
||||
// console.log('Upload successful! Server responded with:', body);
|
||||
// }
|
||||
// })
|
||||
|
||||
// formData.submit(`https://d.pcs.baidu.com/rest/2.0/pcs/superfile2?method=upload&access_token=121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ&type=tmpfile&path=${encodeURI('/app/服务器备份/baidu.exe')}&uploadid=${uploadid}&partseq=${i}`, function(err, res) {
|
||||
// console.log(res.statusCode);
|
||||
// });
|
||||
|
||||
}
|
||||
// https://pan.baidu.com/rest/2.0/xpan/file?method=create
|
||||
let data = {
|
||||
path:encodeURI('/app/服务器备份/baidu.exe'),
|
||||
size: daxiao,
|
||||
isdir:0,
|
||||
rtype: 1,
|
||||
uploadid,
|
||||
block_list:JSON.stringify(promistlist)
|
||||
|
||||
}
|
||||
let s = ''
|
||||
for(let i in data){
|
||||
s += i + "=" + data[i] + '&'
|
||||
}
|
||||
console.log(s)
|
||||
axios.post('https://pan.baidu.com/rest/2.0/xpan/file?method=create',s,{
|
||||
params:{
|
||||
access_token: '121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ',
|
||||
}
|
||||
}).then((res)=>{
|
||||
console.log(res)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
async function start(url) {
|
||||
let info;
|
||||
try {
|
||||
info = await getsize(url)
|
||||
} catch (err) {
|
||||
console.log(err)
|
||||
}
|
||||
console.log(info)
|
||||
precreate(info, url)
|
||||
}
|
||||
module.exports = {
|
||||
start
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 7406691ca4ebf37fdbb8bcccf3cfcfe8 code
|
||||
// http://openapi.baidu.com/oauth/2.0/authorize?response_type=code&client_id=LAEyKcje44EZbERqw0wC3XxyHm4ExqEf&redirect_uri=http://openapi.baidu.com/oauth/2.0/login_success&scope=basic,netdisk&display=tv&qrcode=1&force_login=1
|
||||
// https://openapi.baidu.com/oauth/2.0/token?grant_type=authorization_code&code=7406691ca4ebf37fdbb8bcccf3cfcfe8&client_id=LAEyKcje44EZbERqw0wC3XxyHm4ExqEf&client_secret=kFAr3xS89UjBG5FTkaCzfOqljuFooYZD&redirect_uri=http://openapi.baidu.com/oauth/2.0/login_success
|
||||
// {
|
||||
// "expires_in": 2592000,
|
||||
// "refresh_token": "122.2c2030994472bfdf99a1a5411524de63.YBabjPVrdcHdiGytZJETi1lAEDkm4gDyLOX0Xcw.2wqJeA",
|
||||
// "access_token": "121.f22e108b18705600a0dc665d12cf71ae.Yngau4V98lC_hUvMGnljcSZurJnoohuPYavgk4n.HJDCoQ",
|
||||
// "session_secret": "",
|
||||
// "session_key": "",
|
||||
// "scope": "basic netdisk"
|
||||
// } 30天
|
3
index.js
Normal file
3
index.js
Normal file
@ -0,0 +1,3 @@
|
||||
const wangpan = require("./bin/wangpan.js")
|
||||
|
||||
wangpan.start("./a.exe",'1')
|
11
package.json
Normal file
11
package.json
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"name": "baiduwangpan",
|
||||
"version": "1.0.0",
|
||||
"main": "index.js",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"axios": "^0.21.1",
|
||||
"form-data": "^4.0.0",
|
||||
"request": "^2.88.2"
|
||||
}
|
||||
}
|
342
yarn.lock
Normal file
342
yarn.lock
Normal file
@ -0,0 +1,342 @@
|
||||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
ajv@^6.12.3:
|
||||
version "6.12.6"
|
||||
resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
|
||||
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
|
||||
dependencies:
|
||||
fast-deep-equal "^3.1.1"
|
||||
fast-json-stable-stringify "^2.0.0"
|
||||
json-schema-traverse "^0.4.1"
|
||||
uri-js "^4.2.2"
|
||||
|
||||
asn1@~0.2.3:
|
||||
version "0.2.4"
|
||||
resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136"
|
||||
integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
|
||||
dependencies:
|
||||
safer-buffer "~2.1.0"
|
||||
|
||||
assert-plus@1.0.0, assert-plus@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
|
||||
integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
|
||||
|
||||
asynckit@^0.4.0:
|
||||
version "0.4.0"
|
||||
resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
|
||||
integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
|
||||
|
||||
aws-sign2@~0.7.0:
|
||||
version "0.7.0"
|
||||
resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
|
||||
integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
|
||||
|
||||
aws4@^1.8.0:
|
||||
version "1.11.0"
|
||||
resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59"
|
||||
integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==
|
||||
|
||||
axios@^0.21.1:
|
||||
version "0.21.1"
|
||||
resolved "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8"
|
||||
integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==
|
||||
dependencies:
|
||||
follow-redirects "^1.10.0"
|
||||
|
||||
bcrypt-pbkdf@^1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
|
||||
integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=
|
||||
dependencies:
|
||||
tweetnacl "^0.14.3"
|
||||
|
||||
caseless@~0.12.0:
|
||||
version "0.12.0"
|
||||
resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
|
||||
integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
|
||||
|
||||
combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:
|
||||
version "1.0.8"
|
||||
resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
|
||||
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
|
||||
dependencies:
|
||||
delayed-stream "~1.0.0"
|
||||
|
||||
core-util-is@1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
|
||||
|
||||
dashdash@^1.12.0:
|
||||
version "1.14.1"
|
||||
resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
|
||||
integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
|
||||
delayed-stream@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
||||
integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
|
||||
|
||||
ecc-jsbn@~0.1.1:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
|
||||
integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=
|
||||
dependencies:
|
||||
jsbn "~0.1.0"
|
||||
safer-buffer "^2.1.0"
|
||||
|
||||
extend@~3.0.2:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
|
||||
integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
|
||||
|
||||
extsprintf@1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
|
||||
integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
|
||||
|
||||
extsprintf@^1.2.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
|
||||
integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
|
||||
|
||||
fast-deep-equal@^3.1.1:
|
||||
version "3.1.3"
|
||||
resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
||||
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||
|
||||
fast-json-stable-stringify@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
|
||||
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
|
||||
|
||||
follow-redirects@^1.10.0:
|
||||
version "1.13.3"
|
||||
resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267"
|
||||
integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA==
|
||||
|
||||
forever-agent@~0.6.1:
|
||||
version "0.6.1"
|
||||
resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
|
||||
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
|
||||
|
||||
form-data@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
|
||||
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
|
||||
dependencies:
|
||||
asynckit "^0.4.0"
|
||||
combined-stream "^1.0.8"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
form-data@~2.3.2:
|
||||
version "2.3.3"
|
||||
resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
|
||||
integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
|
||||
dependencies:
|
||||
asynckit "^0.4.0"
|
||||
combined-stream "^1.0.6"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
getpass@^0.1.1:
|
||||
version "0.1.7"
|
||||
resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
|
||||
integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
|
||||
har-schema@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
|
||||
integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
|
||||
|
||||
har-validator@~5.1.3:
|
||||
version "5.1.5"
|
||||
resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd"
|
||||
integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==
|
||||
dependencies:
|
||||
ajv "^6.12.3"
|
||||
har-schema "^2.0.0"
|
||||
|
||||
http-signature@~1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
|
||||
integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
jsprim "^1.2.2"
|
||||
sshpk "^1.7.0"
|
||||
|
||||
is-typedarray@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
|
||||
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
|
||||
|
||||
isstream@~0.1.2:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
|
||||
integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
|
||||
|
||||
jsbn@~0.1.0:
|
||||
version "0.1.1"
|
||||
resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
|
||||
integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
|
||||
|
||||
json-schema-traverse@^0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
|
||||
integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
|
||||
|
||||
json-schema@0.2.3:
|
||||
version "0.2.3"
|
||||
resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
|
||||
integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=
|
||||
|
||||
json-stringify-safe@~5.0.1:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
|
||||
integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
|
||||
|
||||
jsprim@^1.2.2:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
|
||||
integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=
|
||||
dependencies:
|
||||
assert-plus "1.0.0"
|
||||
extsprintf "1.3.0"
|
||||
json-schema "0.2.3"
|
||||
verror "1.10.0"
|
||||
|
||||
mime-db@1.46.0:
|
||||
version "1.46.0"
|
||||
resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.46.0.tgz#6267748a7f799594de3cbc8cde91def349661cee"
|
||||
integrity sha512-svXaP8UQRZ5K7or+ZmfNhg2xX3yKDMUzqadsSqi4NCH/KomcH75MAMYAGVlvXn4+b/xOPhS3I2uHKRUzvjY7BQ==
|
||||
|
||||
mime-types@^2.1.12, mime-types@~2.1.19:
|
||||
version "2.1.29"
|
||||
resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.29.tgz#1d4ab77da64b91f5f72489df29236563754bb1b2"
|
||||
integrity sha512-Y/jMt/S5sR9OaqteJtslsFZKWOIIqMACsJSiHghlCAyhf7jfVYjKBmLiX8OgpWeW+fjJ2b+Az69aPFPkUOY6xQ==
|
||||
dependencies:
|
||||
mime-db "1.46.0"
|
||||
|
||||
oauth-sign@~0.9.0:
|
||||
version "0.9.0"
|
||||
resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
|
||||
integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
|
||||
|
||||
performance-now@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
||||
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
|
||||
|
||||
psl@^1.1.28:
|
||||
version "1.8.0"
|
||||
resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
|
||||
integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
|
||||
|
||||
punycode@^2.1.0, punycode@^2.1.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
|
||||
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
||||
|
||||
qs@~6.5.2:
|
||||
version "6.5.2"
|
||||
resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
|
||||
integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
|
||||
|
||||
request@^2.88.2:
|
||||
version "2.88.2"
|
||||
resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
|
||||
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
|
||||
dependencies:
|
||||
aws-sign2 "~0.7.0"
|
||||
aws4 "^1.8.0"
|
||||
caseless "~0.12.0"
|
||||
combined-stream "~1.0.6"
|
||||
extend "~3.0.2"
|
||||
forever-agent "~0.6.1"
|
||||
form-data "~2.3.2"
|
||||
har-validator "~5.1.3"
|
||||
http-signature "~1.2.0"
|
||||
is-typedarray "~1.0.0"
|
||||
isstream "~0.1.2"
|
||||
json-stringify-safe "~5.0.1"
|
||||
mime-types "~2.1.19"
|
||||
oauth-sign "~0.9.0"
|
||||
performance-now "^2.1.0"
|
||||
qs "~6.5.2"
|
||||
safe-buffer "^5.1.2"
|
||||
tough-cookie "~2.5.0"
|
||||
tunnel-agent "^0.6.0"
|
||||
uuid "^3.3.2"
|
||||
|
||||
safe-buffer@^5.0.1, safe-buffer@^5.1.2:
|
||||
version "5.2.1"
|
||||
resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
|
||||
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
|
||||
|
||||
safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
|
||||
version "2.1.2"
|
||||
resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
||||
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
||||
|
||||
sshpk@^1.7.0:
|
||||
version "1.16.1"
|
||||
resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877"
|
||||
integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==
|
||||
dependencies:
|
||||
asn1 "~0.2.3"
|
||||
assert-plus "^1.0.0"
|
||||
bcrypt-pbkdf "^1.0.0"
|
||||
dashdash "^1.12.0"
|
||||
ecc-jsbn "~0.1.1"
|
||||
getpass "^0.1.1"
|
||||
jsbn "~0.1.0"
|
||||
safer-buffer "^2.0.2"
|
||||
tweetnacl "~0.14.0"
|
||||
|
||||
tough-cookie@~2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
|
||||
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
|
||||
dependencies:
|
||||
psl "^1.1.28"
|
||||
punycode "^2.1.1"
|
||||
|
||||
tunnel-agent@^0.6.0:
|
||||
version "0.6.0"
|
||||
resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
|
||||
integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
|
||||
dependencies:
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
tweetnacl@^0.14.3, tweetnacl@~0.14.0:
|
||||
version "0.14.5"
|
||||
resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
|
||||
integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
|
||||
|
||||
uri-js@^4.2.2:
|
||||
version "4.4.1"
|
||||
resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
|
||||
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
|
||||
dependencies:
|
||||
punycode "^2.1.0"
|
||||
|
||||
uuid@^3.3.2:
|
||||
version "3.4.0"
|
||||
resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
|
||||
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
|
||||
|
||||
verror@1.10.0:
|
||||
version "1.10.0"
|
||||
resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
|
||||
integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
core-util-is "1.0.2"
|
||||
extsprintf "^1.2.0"
|
Loading…
Reference in New Issue
Block a user