Как добавить имя пользователя в URL для расширения Chrome? - PullRequest
1 голос
/ 20 октября 2011

Я работаю над расширением для закладок Chrome с бэкэндом движка приложений Google.Сейчас я единственный пользователь, но я подумал, что если в будущем появятся другие пользователи, URL-адрес должен включать имя пользователя для расширения, чтобы взаимодействовать с бэкендом.Поэтому я подумал изменить

http://ting-1.appspot.com/useradminpage

на

http://ting-1.appspot.com/user_name/useradminpage

, где "user_name" - это идентификатор пользователя gmail.

Но я посмотрел на твиттер-URL и вижучто у них есть

http://twitter.com/#!/user_name/

Какова цель "#!"?Достаточно ли хороша моя схема в этом случае?

1 Ответ

2 голосов
/ 20 октября 2011

# в URL означает «идентификатор фрагмента». Исторически это использовалось для идентификации части документа, идентифицируемой тегом «якорь», но недавно разработчики веб-приложений начали использовать его для передачи информации о состоянии страницы в код Javascript, выполняющийся на странице. Это используется потому, что код Javascript может изменять фрагмент текущей страницы, не вызывая перезагрузку страницы - это означает, что он может обновляться при просмотре веб-приложения и возвращаться туда, где вы были при перезагрузке страницы.

Фрагмент не отправляется на сервер, когда браузер загружает страницу, поэтому сервер Twitter просто видит запрос на twitter.com; это зависит от кода Javascript на странице, чтобы изучить фрагмент и определить, что делать после этого.

В вашем конкретном случае, предполагая, что вы используете службу App Engine User для аутентификации пользователей, у вас есть несколько вариантов того, как различать пользователей в ваших URL:

  1. Используйте их адрес электронной почты. Теоретически это может измениться, и пользователи могут не захотеть, чтобы их адрес указывался в URL. Если URL-адреса являются частными, это более или менее спорный вопрос.
  2. Используйте их user_id. Это непрозрачно и не дает никакой полезной информации о пользователе, поэтому это безопасно, но это также бессмысленно и трудно запомнить.
  3. Пусть пользователи выбирают псевдоним для своих URL-адресов, как это делают Facebook и другие сервисы, в порядке очереди.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...