Итак, это может быть червячная банка. Но мне любопытно, каковы ваши практики?
Например, скажем, ваш сайт состоит из следующих потребностей (очень основных):
- Целевая страница
- Информационная страница для события (статическая)
- Список мест для этого события (динамический)
- Информационная страница для каждого места
С учетом сказанного, как бы вы разработали свои URL-адреса?
Обычно я делал бы что-то вроде следующего:
www.domain.com / - целевая страница [также доступна через www.domain.com/home]
www.domain.com/event - страница с информацией о событии
www.domain.com/places - список всех мест
www.domain.com/places/ndomid} - информационная страница места
Теперь вот вопрос. Говоря грамматически, я имею в виду упоминание определенного места в URL как множественного числа. Разве не имеет смысла идти с этим:
www.domain.com / место / {ID}
в отличие от
www.domain.com/places/{id}
В некоторых средах есть соглашение, которому нужно следовать (например, ASP.NET MVC) по умолчанию. Да, вы можете определить собственные маршруты, чтобы иметь / place / {id} маршрут к PlacesController. Тем не менее, я просто пытаюсь держать это немного абстрактным в обсуждении.
С учетом вышесказанного, давайте посмотрим, например, на другую страницу вашего сайта, у вас есть ссылка, при нажатии на которую откроется модальное всплывающее окно с информацией о месте. Где вы размещаете эту информацию?
Мы могли бы пойти с чем-то вроде этого:
www.domain.com / Ajax / место / {ID}
ИЛИ ЖЕ
www.domain.com/places/ndomid} и обслуживать на основе заголовка запроса (то есть, если запрашивая JSON, вернуть JSON?}.
Наконец, по причинам SEO, обычно я использую слаг, связанный с данным ресурсом. Итак, что-то вроде такого:
www.domain.com / Ajax / места / {ID} / лондон
Где лондон только там, чтобы добавить украшение для ссылки по причинам SEO. Это звук?
Я задаю все эти вопросы, потому что это практики, которые я использовал некоторое время, и я просто хотел бы посмотреть, что делают другие разработчики, или я неправильно к ним подхожу.
Спасибо!