#
в URL означает «идентификатор фрагмента». Исторически это использовалось для идентификации части документа, идентифицируемой тегом «якорь», но недавно разработчики веб-приложений начали использовать его для передачи информации о состоянии страницы в код Javascript, выполняющийся на странице. Это используется потому, что код Javascript может изменять фрагмент текущей страницы, не вызывая перезагрузку страницы - это означает, что он может обновляться при просмотре веб-приложения и возвращаться туда, где вы были при перезагрузке страницы.
Фрагмент не отправляется на сервер, когда браузер загружает страницу, поэтому сервер Twitter просто видит запрос на twitter.com; это зависит от кода Javascript на странице, чтобы изучить фрагмент и определить, что делать после этого.
В вашем конкретном случае, предполагая, что вы используете службу App Engine User для аутентификации пользователей, у вас есть несколько вариантов того, как различать пользователей в ваших URL:
- Используйте их адрес электронной почты. Теоретически это может измениться, и пользователи могут не захотеть, чтобы их адрес указывался в URL. Если URL-адреса являются частными, это более или менее спорный вопрос.
- Используйте их user_id. Это непрозрачно и не дает никакой полезной информации о пользователе, поэтому это безопасно, но это также бессмысленно и трудно запомнить.
- Пусть пользователи выбирают псевдоним для своих URL-адресов, как это делают Facebook и другие сервисы, в порядке очереди.