Pull to refresh

Comments 14

UFO landed and left these words here

Я не согласен с вами в этом вопросе, начнем с того, что уже изначально, хотите вы того или нет, вы отправляете данные о своем местоположении в сессии файлов куки, просто это не видно вашему глазу, а мое решение создано для того, чтобы пользователю наоборот облегчить опыт работы с сайтом и вместо навязчивого модального окна с вводом адреса, подставлять его автоматически (что в любом случае нужно, как минимум для служб доставок, карт и т.д.)

данные о своем местоположении в сессии файлов куки

Это как? Расшифруйте если не сложно.

Когда вы отправляете запрос к серверу, браузер автоматически добавляет в заголовки запроса куки, которые были установлены для данного домена. Это происходит в соответствии с протоколом HTTP, который определяет, как браузеры должны обрабатывать куки и собственно внутри них также находятся и данные о местоположении пользователя, если браузер поддерживает геолокацию, но я чуть поспешил, если ты не дашь своё разрешение то координаты не отправятся даже там) Но тебя все равно могут вычислить по IP, т.к. это не конфиденциальная информация) Но достаточно включить VPN, чтобы сервак думал, что ты находишься там, где тебе нужно 🤫

Запись пары key-value у куки иницирует вебсервер, браузер не придумывает куки. То есть, чтобы записать какие то гео-метки в кукисы, надо чтобы вебсервер их знал. А откуда ему их знать?

браузер не придумывает куки

Так речь идет не о том, придумывает ли браузер что-нибудь или нет, речь идет о том, что он их автоматически добавляет в запрос, а чтобы сервер получал координаты пользователя, нужно получить разрешение самого пользователя и настроить веб-сервер таким образом, чтобы он знал о них. К сожалению я недостаточно квалифицирован в этой области, чтобы давать более развернутый ответ, и я не отрицаю того факта, что могу ошибаться, тут уже вопрос к backend разработчикам)

Не в запрос, а в ответ. Браузер добавляет в ответ те куки, которые поставил вебсервер (ну или js который вебсервер отдал при запросе страницы). То есть браузер никак не может сообщить вебсерверу в своем ответе, какие либо гео-координаты.

Вы имеете ввиду то, что браузер уже на основе полученной информации от веб-сервера интерпретирует её в понятный для пользователя вид, или что? Про какой ответ, который браузер сообщит веб-серверу, вы говорите? Они же работают в обратном порядке, браузер отправляет запрос, веб-сервер - отправляет ответ, по крайней мере так работает протокол http🤔.

Да, все верно. Я перепутал. Плохо писать ответы когда голова занята другой задачей.
Подытоживая: браузер в запрос добавляет в хидер Cookie те куки (key/value), которые были выставлены вебсервером или кодом js который исполняется на странице, которую этот вебсервер отдал.

Никаких других кук идентифицирующих гео-позицию браузер добавить не может. Через метод getCurrentPosition() который инициирует диалоговое окно "разрешить/заблокировать отдачу гео позиции" можно получить эти данные, но решать куда их отправлять и как хранить придется вам.

Понял, вы чуть расширили мой кругозор, благодарю 🤤👍

Это никак не облегчит мою работу с идиотским сайтом. Вместо того, чтобы спокойно открыть нужную мне страницу, я получу запрос отследить мои координаты, на который я привычно отвечу НЕТ. Особенно, на десктопе ))

Думаю тем кому надо прекрасно осведомлены о вашем местоположении без каких либо разрешений) а если бы это задевало вопрос этики наши западные друзья уже бы давно вырезали данную возможность из браузера 😂 Но это уже вкусовщина на самом деле) заходя на определенный сайт, я уже могу примерно предположить, нуждается ли он в моих координатах или же нет, если же да, то мне удобней нажать кнопочку разрешить и не париться, вводя доп. инфу в адресную строку, но как говорится на вкус и цвет...😌

navigator.geolocation.getCurrentPosition((position) =>

Вот на этой строчке кода браузер спросит пользователя можно ли сообщать местоположение

Именно так! Вроде так и написал в статье 🤔

с помощью метода getCurrentPosition() этого api мы инициируем всплытие разрешение на получение геоданных

Sign up to leave a comment.

Articles