У нас є база даних про ресурси, будь то продукти, повідомлення в блогах чи щось таке. Нам потрібно розробити схему URL-адрес для їх вирішення для загальнодоступного веб-сайту.
Ось два приклади, пов’язані з ідентифікатором бази даних:
Ось приклад, привітний:
(Трохи зазирнути в моє життя перегляду)
Мені подобаються дружні URL-адреси, оскільки ви маєте уявлення про те, що знаходиться в кінці URL-адреси, коли ви наводите курсор або побачите це в електронній пошті чи документі. Краще для SEO, або раніше.
Що відбувається, коли документ або товар перейменовано? Або тому, що він змінився (Wiki може не змінитися, але наші ресурси можуть) або через помилку друку, правда? Наші ресурси дуже технічні, довгі слова та схильність до помилок.
Також у нас є ідентифікатор бази даних, який є номером. Давайте розглянемо ідею адреси відео за допомогою магазину з видом на вигляд:
Ідентифікатор очевидний і використовується в пошуку БД. Чудово.
Біт розсувних дверей не є унікальним і просто генерується з назви відео, його можна було перевірити в GET, тому якщо введені ковзаючі двері і не відповідають тому, що є в документі 287171, він відповідає 404.
А може, це можна ігнорувати, дозволяючи людям вклеювати все, що їм заманеться, якщо хтось коли-небудь дбав про них. Отже, ця URL-адреса також буде працювати:
Як було сказано, питання щодо перевірки дружньої частини - це проблема перейменування чи виправлення помилок. Якщо ім’я змінилося, а в нашому домені це все-таки трапляється, ми не хочемо порушувати URL-адреси, які знаходяться там, тож ми повинні:
Тільки не перевіряйте дружню частину.
Перевірте, але додайте "історію" дружніх частин до запису бази даних, щоб будь-які попередні дружні ідентифікатори все ще працювали!
Ваші думки та ідеї вітаються.
Лука
http://programmers.stackexchange.com/questions/255684/providing-friendly-urls-for-a-website-vs-realities-of-database-ids
(використовуючи неперевірену версію з огляду на зміну заголовка; також коротше посилання "поділитися" - це лише ідентифікатор:http://programmers.stackexchange.com/q/255684/25768
(і ідентифікатор користувача для відстеження значків)