Как гарантированно определить посетителя из Украины?
На сайте есть забаненные в Украине ресурсы - по-умолчанию используется карта Яндекса.
Как гарантированно определить украинский IP, чтобы показать, например, гугль-карты?
Или может быть лучше как-то определить, что у посетителя яндекс забанен и предложить поменять на гугль? Как это лучше сделать?
cjitkul33: Против прокси нет приёма.... Исключительно простая механика: стране выдан пул IP, прочитали IP - определили страну и кучу сопутствующей инфы (столица, валюта, тайм-зона......). Делал недавно 3-х язычный сайт, очень пригодилось.
самое примитивное решение тупо пинговать, или отправить какой нибудь запрос яндексу.. Получаем 200 ок, проблем нет. Получаем ошибку - грузим гугловские карты. Скрипт пинговки загружаете первым что бы успеть все проверить до того как пользователь заметить подвох.
cjitkul33: создаете js - скрипт. Загружаете его первым. Отправляете запрос яндексу. Получаете положительный ответ типа 200, ничего не делаете, иначе заменяете div блок Я.Карт на див блочек с Г.Картами.
cjitkul33: "просто попытка установить соединение и отмена по таймауту." - все правильно, других способов выяснить имеет ли клиент доступ к ресурсу нет.
Может быть под пингом подразумевался HEAD, но я не думаю что это что-то ускорит.
Украинцы тоже не сидят сложа руки и ставят всякий разный софт для обхода. Умный софт проксирует только запросы к забаненным ресурсам. Т.е. для твоего сайта по IP пользователя ты будешь думать, что это Украина, но запрос на яндекс пойдёт через прокси в Голландии.
Можно попробовать делать ajax запрос к апи яндекса с timelimit 2-3 секунды, если ответа не пришло подгружать гуглокарты
latteo: на нормальном подключении затуп сайта на 2-3 секунды сильно повлияет на посещаемость, в итоге.
Хотя, если делать это только при первом посещении... А разве у ajax есть timelimit? И он реально корректно работает на всех браузерах?
cjitkul33: ajax timeout оно называется, без установки этого параметра я видел запросы, которые 10 минут висели. И программируя фронт надо учесть, что любой запрос потенциально может уйти в такие цифры. Как это учитывать лучше у фронтендщиков уточнить :)
Зачем что то определять? По умолчанию используйте Google maps. Сервис то должен быть заточен под целевую аудиторию, и поэтому если есть решение для всех, то почему бы его не использовать изначально
cjitkul33: ну конечно, лучше ведь нахамить первому же отвечающему чем просто объяснить в чем именно причина, а то за что вы им лодырям деньги платите, да?
Никита Полевой:
Потому что я не верю, что вопрос "В чем разница YM и GM?" не провокационный.
Примерно как спросить в чем разница между бмв и мерседес? По сути ни в чем, да. Но вопрос-то провокационный.
SyavaSyava: с вашей позицией я согласен - человек задал вопрос "как", а не "что".
Только вот дело в том, что тостер это технический форум, здесь чаще всего подходят к решению проблем комплексно: если вы зададите вопрос "хочу нарезать около пяти сотен CD-болванок, из чего варить энергетик обезьянке которая будет неделю напролёт менять диски в приводе?", то вам скорее посоветуют пользоваться сетью для передачи информации и спросят какая существует техническая необходимость в записи такого количества CD, чем предложат мешать этой проклятой мартышке таурин с кофеином.
Тут та же ситуация: ТС спросил как определить геоположение пользователя, но как видите цель этой затеи не оправдала себя, и в итоге топовый ответ предлагает банально google maps использовать как fallback. Только ТС вдобавок ещё успел немного съязвить когда его спросили почему он так не хочет менять YM на GM.
Лично я не понимаю почему он решил, что "вопрос-то провокационный".
в итоге топовый ответ предлагает банально google maps использовать
Лично я не понимаю почему он решил, что "вопрос-то провокационный".
Вот потому большей частью различного софта и пользоваться невозможно. Сделать как проще и нехай с ним - юзеры схавают.
А провокационный, потому что те, кто так делает, пытаются себя убедить в том, что они правы. Ну и ладно, бог с вами. Спорить еще с такими.
Все, больше на эту провокацию не поддаюсь и не отвечаю.
cjitkul33: написанное вами никак не связано с содержанием моего последнего комментария, он был о другом.
"те, кто так делает, пытаются себя убедить в том, что они правы" - не надо параноить, этим людям вообще строго говоря плевать. Они как раз ищут самое простое решение, которые вы моментально хамски отвергли.
sim3x: а зря. Это как в магазине ботинки выбирать, к примеру. И тут ботинки, и там ботинки. А однако ж есть разница, выбирают люди.
Так и в картах. Особенно, если твоего села на карте от гугля вообще нет, например. А это часто встречается.
sim3x: Кстати, дело даже не только в отсутствии чего-либо. Цветовая гамма карты, деление на регионы, перегруженность объектами и прочие факторы влияют на выбор пользователя. А для сервиса, где карта одна из основных частей - это очень критично.
Стоило плодить столько бесполезных комментариев и язвить ("Ну как я сам не догадался-то...") если это можно было сказать в самом начале?
я подумал, что вопрос "В чем разница YM и GM?" как раз и был тем самым бесполезным язвительным комментарием. Уж больно очевиден на него ответ. Если я не правильно понял, то приношу извинения. Не ожидал, что действительно можно не видеть разницу.