1. node 原生api 的使用
const http = require('http');
var md5 = require('md5');
var querystring = require('querystring');
var url = 'xxxx/login';
var listurl = `xxx/api/list`;
var cookie = '';
function LoginApi(params) {
const postData = querystring.stringify({
name: 'hp',
password: md5('hp')
});
return new Promise((reslove, reject) => {
const req = http.request(url, {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
method: 'POST'
}, (res) => {
res.setEncoding('utf8');
res.on('data', (chunk) => {
console.log(`响应主体: ${chunk}`);
});
res.on('end', () => {
reslove(res.headers['set-cookie']);
});
});
req.write(postData);
req.end();
});
}
async function main() {
try {
cookie = await LoginApi();
await list(cookie);
} catch (error) {
console.log('error', error);
}
}
function list(cookie) {
const postData = querystring.stringify({
page: 1,
pageSize: 40,
auditStatus: -1
});
return new Promise((reslove, reject) => {
console.log(cookie);
const req = http.request(listurl, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
Cookie: cookie
}
}, (res) => {
console.log(`状态码: ${res.statusCode}`);
res.setEncoding('utf8');
res.on('data', (chunk) => {
console.log(`响应主体: ${chunk}`);
});
res.on('end', () => {
console.log('响应中已无数据');
});
});
req.write(postData);
req.end();
});
}
main();
axios 的使用
const axios = require('axios');
var md5 = require('md5');
var fs = require('fs');
var querystring = require('querystring');
var url = 'xxxx/login';
var listurl = `xxx/api/list`;
function LoginApi(params) {
return axios({
url,
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data: querystring.stringify({
name: 'admin',
password: md5('admin')
}),
method: 'POST'
});
}
async function main() {
try {
var res = await LoginApi();
var result = await list(res.headers['set-cookie']);
console.log(result.data.data);
} catch (error) {
console.log('error', error);
}
}
function list(cookie) {
return axios({
url: listurl,
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
Cookie: cookie
},
data: querystring.stringify({
page: 1,
pageSize: 40,
auditStatus: -1
}),
method: 'POST'
});
}
main();