@botovod нет, не поддерживают. Как вариант компилировать где-то вне, а уже готовый код вставлять в BAS.
Прокси для WS (Node JS)
-
Здравствуйте. Изучаю работу с Node JS, понадобилось разрулить дела по ВебСокетам. Есть такой код:
await (new Promise((resolve, reject) => { WebSocket = require("ws"); var SocksProxyAgent = require('socks-proxy-agent'); var endpoint = 'ws://echo.websocket.org'; var proxy = 'socks://127.0.0.1:9050'; // create an instance of the `SocksProxyAgent` class with the proxy server information var agent = new SocksProxyAgent(proxy); // initiate the WebSocket connection var ws = new WebSocket(endpoint,[], { agent: agent }); ws.on("open", function open() { global.tost = "connected"; console.log('Сработало событие OPEN у сокета'); }); ws.on("message", function incoming(data) { global.tost = data; ws.send(JSON.stringify({ type: 'CHAT_MESSAGE', data: { message: 'test' } })); console.log('Отправили сообщение серверу'); console.log('Получили такой ответ:'); console.log(global.tost); } }); ws.on("close", function close() { global.tost = "disconnected"; console.log(global.tost); resolve(); }); }));Скрипт выполняется до бесконечности, и сайт не даёт соединиться по вебсокету, вроде как.
Использую модули:
https://www.npmjs.com/package/ws
https://github.com/TooTallNate/node-socks-proxy-agentМожет кто подсказать как прикрутить прокси к сокетам? http или socks5, это без разницы. За любую помощь буду очень благодарен.
-
@Cruzel Всё прекрасно работает:
await (new Promise((resolve, reject) => { var WebSocket = require('ws'); var SocksProxyAgent = require('socks-proxy-agent'); var proxy = 'socks://127.0.0.1:9150'; var endpoint = 'wss://echo.websocket.org/'; var agent = new SocksProxyAgent(proxy); var socket = new WebSocket(endpoint, { agent: agent }); socket.on('open', function () { console.log('open event!'); socket.send('hello world'); }); socket.on('message', function (data, flags) { console.log(data); resolve() socket.close(); }); }));
Вот тестовый скрипт
Используется Tor, он должен быть запущен