Я для этого подключался через MassTunneler к куче вируальныx машин на Lunix
на которых был запущен написанный мною web server на nodejs который ждал от потока запрос и потом изменял подключение на той виртуальной машине куда пришел запрос, сначала я менял подключение через нативные приложение этих vpn сервисов, но потом понял, что для каждого сервиса там свои команды и свой синтаксис запросов нужно использовать для смены ip, и перешел на использование OpenVPN.
Но потом я понял что ip адреса всех этих VPN сервисов знают все нормальные базы проверки ip адресов
И сейчас сижу на проксях, которые не нужно как то геморно подымать, просто заплатил и не паришься.
Но если тебе просто для регистрации почт например, то VPN прокси подходят, так как скорости которые получаются там лучше всех проксей которые я использовал.
Несколько get-запросов в одном коде
-
В коде никак не могу прописать сразу несколько запросов через http-клиент одновременно. Беда с этими асинхронными функциями...
Скрипт будет однопоточный, так что функционал таков, что делать запросы можно, однако ж всё равно проходит только первый. Второй выполняется и скрипт вылетает. Что в одном блоке кода, что если разнести по разным блокам.
Мои действия:
Вызов первый:switch_http_client_main() http_client_get2('https://vk.com/select_ajax.php?act=a_get_countries',{method:("GET"),headers:("")})! VAR_SAVED_CONTENT = http_client_encoded_content("auto")Вызов второй чуть ниже:
_switch_http_client_main() http_client_get2('https://vk.com/select_ajax.php?act=a_get_cities&country='+country+'&str=$$$***',{method:("GET"),headers:("")})! var content = http_client_encoded_content("auto")После второго вызова приходит правильный ответ, что видно по анализатору http-траффика, но весь скрипт падает, никакие отладки не помогают - скрипт крашится ещё до того, как успеваю глянуть в [[LAST_ERROR]].
Пробовал оборачивать асинхронные действия в конструкцию типа
_if(true, function(){ _call(Вызов http и get-запрос)! })!Но такая конструкция не верна, так как ничего не возвращает.
Куда копать? Кому удалось запустить в исходном коде запросы?
-
_if(true, function(){ http_client_get2(....)! })! -
@uraabk да, переписал код, и у меня заработало. Оказывается, проблема была не в вызовах, а совсем в другой части кода. Ругался на то, что я делаю вызво в цикле с условием if:
var country_search = asf.res("country") if (country_search == "Search by cityes"){ _if(true, function(){ _switch_http_client_main() http_client_get2('https://vk.com/select_ajax.php?act=a_get_cities&country='+country_id+'&str=$$$***',{method:("GET"),headers:("")})! VAR_CITYES = http_client_encoded_content("auto") })! }Вытащил вызов за пределы цикла - вуаля, всё работает.
Кто-нибудь знает почему так?
-
@pragmatik Я Вам даже скажу, что и этот Ваш код неверный
да, переписал код, и у меня заработало. Оказывается, проблема была не в вызовах, а совсем в другой части кода. Ругался на то, что я делаю вызво в цикле с условием if:
var country_search = asf.res("country") if (country_search == "Search by cityes"){ _if(true, function(){ _switch_http_client_main() http_client_get2('https://vk.com/select_ajax.php?act=a_get_cities&country='+country_id+'&str=$$$***',{method:("GET"),headers:("")})! VAR_CITYES = http_client_encoded_content("auto") })! }Вытащил вызов за пределы цикла - вуаля, всё работает.
Кто-нибудь знает почему так?
в простом if нельзя вызывать асинхронную функцию БАС
-
@pragmatik Проще наверное ответить "потому что" ))) Просто даже если писать на чистом js, то результат будет такой же, чтобы работать с асинхронными вызовами там и существуют калбеки, промисы, генераторы и наконец await/async. В бас же реализован свой api с которым и надо работать, тк этого его внутренние функции и использовать с ними например промисы не получится.
