Сайт на Laravel. Интернет-магазин. Нужно узнать из какого региона пользователь, чтобы показать ему только те товары, которые возможно доставить в его регион. Что посоветуете?
Пусть ручками сам регион выбирает, а потом запомнить то что он один раз выбрал. Желательно на всю жизнь =) Был как то один сайт, на котором я указывал свой город, а сайт уже через неделю забывал что я там выбирал и настойчиво мне предлагал снова выбрать город. Это кажись был юлмарт, но я могу ошибаться.
Вот я тоже подумал, что может не стоит заморачиваться. Спросил при первом посещении откуда юзер и в куку записал. А для зарегестрированных записать в базу.
будто на 10 лет назад в прошлое вернулся, когда реально задумывались, как же вычислить регион пользователя. стыдно такое не загуглить. а человек переехал или просто решил погостить месяцок в другом регионе, а ты ему всеравно из его старого региона товар показываешь.
Дело не в том, могу я загуглить или нет) Меня интересует проверенный способ. Я знаю про HTML5 geolocation (navigator.geolocation.getCurrentPosition). Знаю, что есть сервисы платные и бесплатные. Мне интересно кто как решает эту проблему. Хочу выбрать оптимальный путь. Сторонние сервисы использовать не очень хочется, так как сервис может закрыться или быть недоступным.
это утопическая точка зрения. с тем же успехом стремно использовать подключение jquery из библиотек google ведь у пользователя может быть косячный dns или вообще ip cdn.google заблокирован из-за какого-то перманента от роскомпозора. платный сервис врядли может себе позволить внезапно закрыться - у вас будет время сменить сервис на другой. быть недоступным он себе тоже врядли сможет позволить. думаю, шансов больше у вашего магазина закрыться или быть оффлайн, чем сервису на сотню тысяч клиентов.
Смотря какой сервис. Сервисы разные бывают. Я потому и прошу посоветовать, что лучше использовать для решения данной проблемы. Точка зрения возможно и утопическая, но согласитесь всегда хочется обезопасить сайт от проблем даже от гипотетических. Я считаю, что если есть возможность не использовать сторонние сервисы, то лучше их и не использовать. Ну а если без этого обойтись не получится, то стараюсь выбрать сервис проверенный и надёжный. Вот собственно потому и создал эту тему.
проверяй доступен ли сторонний апи, если недоступен - используй другой способ (например локальная база в GeoIp) или выбирай локацию по умолчанию. как вариант - выбрать апи, которое позволяет выгрузить базу на локальный сервер и дергать уже ее локально. обновлять каждые сутки. вряд-ли тебе кто-то прямо направит на проверенный и надежный сервис. все придется оценить самому.