Я просмотрел SO, и этот вопрос имеет было спросил до несколько раз, но я не нашел ответов, объясняющих, как на самом деле реализуется поведение, которое я хочу реализовать.
Что я имею в виду, так это имитировать функцию booking.com, в которой, когда вы открываете результат поиска из списка результатов поиска, появляется div, указывающий, что результат был открыт в другой вкладке (или окне), и он исчезает, когда что другая вкладка (или окно) была закрыта.
Скриншот:
Первая попытка состояла в том, чтобы проверить, был ли какой-либо javascript прикреплен к ссылкам, но это не так, потому что, если вы просто скопируете URL-адрес из источника страницы и откроете его, функция будет работать.
Поэтому я подумал, что этим можно как-то управлять на стороне сервера, и запустил wireshark, чтобы попытаться перехватить любые вызовы ajax между двумя открытыми страницами и сервером. Было много запросов, но никто, кажется, не передает необходимую информацию (я думаю, идентификатор отеля или какой-то URL-адрес). Также обратите внимание, что открытие URL-адреса элемента результатов, который включает идентификатор сеанса, в окне инкогнито или в другом окне браузера (я имею в виду Firefox вместо Chrome), нарушает эту функцию; так что это исключает любое отслеживание сеанса или IP-адреса.
Последняя попытка, я мог подумать, что страница результатов поиска опрашивает некоторый файл cookie, который устанавливается в домене, когда открывается другая страница, и сбрасывается, когда она закрывается. Итак, я проверил файлы cookie, содержимое которых на самом деле немного загадочно для понимания, но я увидел, что ни один файл cookie на самом деле не изменяется при открытии и закрытии другой вкладки, поэтому, опять же, это невозможно сделать таким образом.
Что осталось?