Я работаю над приложением, которое позволяет зарегистрированным пользователям создавать или загружать контент и позволяет анонимным пользователям просматривать этот контент и просматривать страницы зарегистрированных пользователей, чтобы найти этот контент - это очень похоже на то, как сайт, например, Flickr, позволяет пользователям просматривать страницы своих пользователей.Создание уникальных и непрозрачных идентификаторов пользователей в Google App Engine
Для этого мне нужен способ идентифицировать пользователя в анонимном запросе HTTP GET. Пользователь должен иметь возможность ввести http://myapplication.com/browse/<userid>/<contentid>
и перейти на нужную страницу - должен быть уникальным, но не должен быть чем-то вроде адреса электронной почты пользователя, в целях конфиденциальности.
Через Google App Engine я могу получить адрес электронной почты, связанный с пользователем, но, как я уже сказал, я не хочу его использовать. Я могу, чтобы пользователи моего приложения выбирали уникальное имя пользователя при регистрации, но я хотел бы сделать это необязательным, если это вообще возможно, чтобы процесс регистрации был как можно короче.
Еще один вариант - генерировать некоторые случайные файлы cookie (GUID?) Во время процесса регистрации и использовать это, я не вижу очевидного способа гарантировать уникальность такого файла cookie без поездки в базу данных.
Есть ли способ, предоставляемый объекту пользователя App Engine, получить уникальный идентификатор для этого объекта, который может быть использован таким образом?
Я ищу решение Python - я забыл, что GAE также поддерживает Java. Тем не менее, я ожидаю, что методы будут похожи, независимо от языка.
«Если текущий пользователь не подписан, конструктор Users вызывает UserNotFoundError». - т. е. для этого требуется вход в Google. Однако я бы сказал, что использование механизма входа в систему Google лучше, чем сворачивать ваши собственные, особенно для ожиданий пользователей. – Mark
Однако мне приходит в голову, что user_id может быть уникальным в мире, что было бы нехорошо. – Mark
Похоже, это именно то, что я ищу, на самом деле. Я использую вход в систему Google, и действительно уникальным для пользователя user_id является требование. Отлично. –