nose.jsでws(WebSocket)を使ってプロキシ経由で特定のサイトに接続したいです。
したいこと:
node.js → ws → プロキシ使用 → 特定のサイトに接続 → sendでデータを送る
ということをしたいです。
プロキシに関してはまだまだ未熟なのでそこも含めて詳しく回答して頂けると幸いです。
よろしくお願いします。
ソースコード
// *** モジュールのインクルード *** // const proxyAgent = require('proxy-agent'); const request = require('request'); const WebSocket = require('ws'); // *** プロキシの設定 *** // let allProxyAgents = []; let proxyAgents = []; function getProxy() { if (proxyAgents.length == 0) { proxyAgents = allProxyAgents; } return proxyAgents.shift(); } // *** プロキシの一覧を取得 *** // function getProxys() { console.log(`プロキシの一覧を取得中...`); request('https://www.proxy-list.download/api/v1/get?type=socks5', (err, req, body) => { let proxies = body.replace(/\r/g, '').split('\n'); proxies.forEach(proxy => { allProxyAgents.push(new proxyAgent(`socks://${proxy}`)); }); console.log(`${proxies.length}個のプロキシが接続可能です。`); }); } // *** 接続 *** // console.log('接続中...'); ws = new WebSocket(/*URL?*/, { origin: /*???*/, rejectUnauthorized: false, agent: getProxy() }); ws.on('close', function () { console.error('終了しました。'); });
追記:
スマホからの入力なので文章が見にくいかもしれません。
すいません。
回答1件
あなたの回答
tips
プレビュー