Почему некоторые URL содержат как числовой идентификатор, так и имя? - PullRequest
4 голосов
/ 07 января 2009

Мне интересно, почему ссылка на профиль выглядит так:

http://stackoverflow.com/users/ID/NAME

не просто:

http://stackoverflow.com/users/ID

или даже лучше:

http://stackoverflow.com/users/NAME

Может ли быть пара пользователей с одинаковым именем? Или один пользователь может иметь много имен?

Ответы [ 7 ]

16 голосов
/ 07 января 2009

Все SO-URL имеют вид / описание формы, где идентификатор уникален, а описание является необязательным. Таким образом, /users/12890/arne-burmeister соответствует /users/12890/huhu, а /questions/420380/why-does-the-link-to-the-user-profile-have-both-id-and-name соответствует /questions/420380/foo. При поиске используется только идентификатор, но это намного лучше для рейтинга в Google, когда в URL появляется пользователь / вопрос / что-либо-что-можно найти (также для людей это гораздо более наглядно; -).

Кстати, поиск по идентификатору быстрее, чем по такой большой текстовой строке. И, конечно, URL остается действительным, если кто-то меняет свое имя пользователя или вопрос.

4 голосов
/ 07 января 2009

Часть после последней косой черты, похоже, связана с SEO (т.е. делает URL более выразительным).
По URL-адресам, которые я проверял, вы могли заменить эту часть на то, что хотели, она все еще работала. Таким образом, URL http://stackoverflow.com/users/37086/othername все еще указывает на ваш профиль.

2 голосов
/ 07 января 2009

Для этого существует запрос на счет пользователя . Если вы хотите, чтобы это произошло, то uservoice - подходящее место для обсуждения / голосования.

2 голосов
/ 07 января 2009

Я бы предположил, что поиск в базе данных исключительно по строке имени будет стоить дороже, чем числовой поиск по первичному ключу, даже если столбец имени проиндексирован. Затем добавляется имя, чтобы сделать URL более удобными для пользователей и оптимизировать SEO.

1 голос
/ 07 января 2009

Ваше имя на SO не является уникальным кликом по пользователям и введите Джош, есть целая страница из нас. Таким образом, вы должны иметь удостоверение личности. Что касается того, почему имя, о котором все думают, так же хорошо, как и мое.

0 голосов
/ 07 января 2009

Только предположения: ID позволяет очень быстро получить данные, представленные на странице профиля. Это имя только для людей и игнорируется, так как мне легче отрицать, что вы rkj, а я phihag, чем ваш ID 37086 и мой 35070.

0 голосов
/ 07 января 2009

Попробуйте изменить или удалить имя и посмотреть, что произойдет.

Я думаю, что ваши URL-адреса говорят вам, чего ожидать, но приложение не нуждается (или не использует) эту информацию.

Amazon делает что-то очень похожее со своими книгами, если я правильно помню: у них есть ASIN (их внутренний идентификатор) и название книги в URL, но только когда-либо ищите ASIN.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...