Просмотр переменной javascript из любого браузера

У меня есть переменная в Javascript, которая создается путем чтения числа из HTML, добавления к нему числа и последующего возврата в HTML.

Я хочу сделать так, чтобы независимо от того, какой у вас браузер/пользователь, вы видели последнюю версию переменной. В настоящее время, если я обновляю страницу, номер сбрасывается на 0 (значение по умолчанию). Я хочу, чтобы, если я обновлю номер до 1, когда кто-то еще просматривает его из другого браузера, они также увидят 1, а не 0.

Я видел, что куки-файлы являются опцией, однако я думал, что куки-файлы только на стороне клиента? Это означало бы, что только я увижу последнюю версию переменной.

Я видел, что сеансы - это еще один вариант, сеансы на стороне сервера? И будут ли они делать работу, которую я ищу?

Есть ли другой способ сделать это, который я не рассматривал?

заранее спасибо

Сеансы не работают в разных браузерах. Сеанс является локальным для браузера.

Monica Acha 24.01.2019 18:20

вам нужно будет сделать это на стороне сервера

DCR 24.01.2019 18:22

@MonicaAcha Вы всегда можете восстановить этот сеанс в новом браузере при входе в систему или что-то в этом роде.

Brad 24.01.2019 18:22
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
3
36
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

I want to make it so that no matter what browser/what user you are, you are seeing the latest version of the variable.

Вам нужно отправлять обновления из браузера на сервер, а затем этот сервер передает ваши обновления всем другим клиентам. Есть много вариантов того, как это сделать, с различными компромиссами и сложностью.

Один из способов — просто взять этот номер и отправить его на сервер. Затем при загрузке следующей страницы сервер вводит этот новый номер в страницу, которую он выводит (или передает его через вызов API, через AJAX, через Fetch API или события, отправленные сервером, WebSocket и т. д.). Если вы сделаете это, вам нужно будет решить, как обрабатывать параллелизм. Что произойдет, если два человека загрузят страницу одновременно?

Общая система, которую вы описываете, называется Оперативное преобразование, и это кроличья нора, в которую вы, вероятно, не захотите спускаться прямо сейчас. Просто поймите, что не существует волшебства, которое синхронизирует вещи по всей планете идеально и в одно и то же время. Ваша система должна каким-то образом учитывать присущие задержки.

I've seen that cookies are an option, however I thought cookies were client side only?

Да, файлы cookie являются клиентскими. Они отправляются на сервер с каждым запросом, но это бесполезный инструмент для вас, кроме идентификации сеанса.

I've seen that sessions are another option, are sessions server side?

Они могут быть, но вам нужно найти способ узнать, что такое пользователь между браузерами. Обычно идентификатор сеанса хранится в файлах cookie.

Если бы я поместил свои файлы на клиент SFTB. Будет ли это технически быть онлайн «все время»? Таким образом, html всегда будет отображать последнюю версию переменной? Или это так не работает? (Извините, если моя терминология неверна, просто пытаюсь понять это.)

JackU 24.01.2019 18:33

@JackU Я не знаю, что такое клиент SFTB.

Brad 24.01.2019 19:11

Другие вопросы по теме