UNPKG

163music-api

Version:

NeteaseMusicApi's TypeScript Version

43 lines (42 loc) 1.4 kB
"use strict"; const http_1 = require('http'); const querystring_1 = require('querystring'); const util_1 = require('../util'); const typeArr = [1, 10, 100, 1000, 1002, 1004, 1006, 1009]; exports.search = (text, callback, limit = 3, offset = 0, typeNumber = 0) => { let type = typeArr[typeNumber]; let form = { s: text, limit: limit, type: type, offset: offset }; let postData = querystring_1.stringify(form); let reqOption = util_1.getRequestOption('/api/search/pc', 'POST'); console.log(postData); return new Promise((resolve, reject) => { let req = http_1.request(reqOption, (res) => { if (res.statusCode == 200) { console.log(res.statusCode); let bufs = []; res.on('data', (chunk) => { bufs.push(chunk); }); res.on('end', () => { let result = Buffer.concat(bufs); let info = JSON.parse(result.toString()); callback && callback(info); resolve(info); }); } else { reject(res.statusCode); } }); req.on('error', (err) => { reject(err); }); req.write(postData); req.end(); }); };