Как создать ссылку, уникальную для данных пользователей? [закрыто]
Я пытаюсь сохранить информацию, которую пользователь вводит в поле в файле JSON, а затем даю ему новую ссылку, где страница является точной копией первой, но данные пользователя уже введены. Эта ссылка должна быть автоматически сгенерирована когда пользователь нажимает сохранить данные.
Ответы
Основываясь на той ограниченной информации, которую вы мне дали, я бы рекомендовал вам изучить это.
По сути, вы хотите создать URL-адрес, который может обслуживать информацию пользователя по запросу GET . Есть несколько способов начать с этого, но я бы порекомендовал изучить то, что называется строкой запроса . Другой способ справиться с этим - динамическая маршрутизация . Вот как я обычно вижу что-то вроде этого:
- Пользователь создает некоторые данные о себе, которые вы сохраняете (я бы рекомендовал базу данных вместо простого файла JSON, MongoDB может быть хорошей отправной точкой, если вы хотите придерживаться JSON).
- Когда пользователь вводит некоторую информацию, вы создаете некоторую форму идентификации для этой записи - это может быть хешированная версия идентификатора электронной почты пользователя или просто целочисленный идентификатор, связанный с этой записью. Таким образом, вместо вашего JSON
{ data: data }
он будет выглядеть примерно так:{ id: x, data: data }
- Как только это будет сделано, у вас может быть другая страница, которая ожидает URL-адрес, например
/getUserData/?id=x
(строка запроса) ИЛИ/getData/id
(динамический маршрут) - затем вы можете использовать ExpressJS , Django или любую другую серверную структуру, которую вы используете для извлечения параметра id, fetch данные с использованием только что извлеченного параметра и использовать его для возврата данных, необходимых пользователю.
РЕДАКТИРОВАТЬ: построитель стратегии опций, который вы указали в своем комментарии, делает что-то очень похожее - они просто генерируют уникальный идентификатор для каждой настройки и используют этот идентификатор для маршрутизации к этому сеансу. Вероятно, он построен с использованием ReactJS , и вы можете увидеть, как сделать что-то подобное в React здесь . Если вы хотите сделать это с помощью ExpressJS, проверьте это .