#node.js #tor
#node.js #tor
Вопрос:
Мой tor подключен к 127.0.0.1:9051
, сказано, что это не http-прокси, так как я могу действительно подключиться к веб-сайтам, программно используя его (предпочтительно node.js )? (Пытаюсь подключиться с помощью http GET)
Например, есть ли определенный способ отправки запросов?
Заранее спасибо 🙏
Ответ №1:
Вы можете использовать Axios для запроса и установить прокси на TOR SOCKS proxy. Как показано ниже
const axios = require('axios');
const SocksProxyAgent = require('socks-proxy-agent');
const proxyOptions = `socks5://$127.0.0.1:9050`;
const httpsAgent = new SocksProxyAgent(proxyOptions);
const baseUrl = 'https://example.com'
const client = axios.create({baseUrl, httpsAgent});
client.get('/something').then(res => res.data);
Комментарии:
1. Это все еще работает?
Ответ №2:
Для людей, которые ищут обновленный ответ здесь, что работает для меня. Убедитесь, что ваш tor
экземпляр запущен на другой вкладке терминала или в фоновом режиме.
Это обычная axios
настройка, но нам нужно передать httpsAgent
параметр, созданный socks-proxy-agent
библиотекой.
const axios = require('axios')
const { SocksProxyAgent } = require('socks-proxy-agent')
const run = async () => {
try {
const httpsAgent = new SocksProxyAgent('socks://127.0.0.1:9050')
const result = await axios({
httpsAgent,
method: 'get',
url: 'https://api.ipify.org'
})
console.log(result.data)
// 185.220.101.68
} catch (err) {
console.log(err.message)
}
}
run()