Node.js 使用 HTTPS 请求 API 并设置 10 秒请求间隔
const https = require('https');
const url = 'https://example.com/api?weekId='; const headers = { 'Host': 'hotel.wanzhuhu.com', 'Connection': 'keep-alive', 'cookie': 'token=eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxODMzNTQwMDYzMCIsImlhdCI6MTY4MDYyODI0OCwiYWNjb3VudElkIjoxODYzMTYsImV4cCI6MTY4MzIyMDI0OH0.YdgrJlyYwT-ApQrUGPXbjPfogwoeoqdi9FmOUXnNSBC2Zrrl9em8e4HZsexVUEyL60ctYyzXuxgpoxL-8UTcMQ', 'charset': 'utf-8', 'content-type': 'application/json;charset=utf-8', 'User-Agent': 'Mozilla/5.0 (Linux; Android 7.1.2; JEF-AN00 Build/N2G47H; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/3263 MMWEBSDK/20220105 Mobile Safari/537.36 MMWEBID/3599 MicroMessenger/8.0.19.2080(0x28001337) Process/appbrand0 WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64 MiniProgramEnv/android', 'authorization': 'eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxODMzNTQwMDYzMCIsImlhdCI6MTY4MDYyODI0OCwiYWNjb3VudElkIjoxODYzMTYsImV4cCI6MTY4MzIyMDI0OH0.YdgrJlyYwT-ApQrUGPXbjPfogwoeoqdi9FmOUXnNSBC2Zrrl9em8e4HZsexVUEyL60ctYyzXuxgpoxL-8UTcMQ', 'Accept-Encoding': 'gzip,compress,br,deflate', 'Referer': 'https://servicewechat.com/wxd0b0b4a5f0d0537f/130/page-frame.html' };
async function request(url) {
return new Promise((resolve, reject) => {
https.get(url, { headers }, (res) => {
res.setEncoding('utf8');
let rawData = '';
res.on('data', (chunk) => {
rawData += chunk;
});
res.on('end', () => {
resolve(rawData);
});
}).on('error', (e) => {
reject(请求失败:${e.message});
});
});
}
async function main() { for (let i = 1924; i < 1955; i++) { const requestUrl = url + i; try { const data = await request(requestUrl); console.log(data); } catch (e) { console.error(e); } await new Promise((resolve) => setTimeout(resolve, 10000)); } }
main();
原文地址: https://www.cveoy.top/t/topic/ndk9 著作权归作者所有。请勿转载和采集!