Об использовании Asterix в URL
Использование Asterix в вашем URL, вероятно, не очень хорошая идея, в основном потому, что:
- Ни UTF-8, ни ASCII в настоящее время не могут обозначать Asterix.
- Он был бы чуть более чем пятном в стандартной адресной строке браузера.
- Я сомневаюсь, что ему бы очень понравилось. И у него есть довольно большие друзья.
- Это просто странно.
Об использовании звездочек в URL
Использование звездочки (*) в URL (и, да, я знаю, что вы имели в виду все это время) также не такая уж хорошая идея. Поскольку это зарезервированный персонаж, он больше нигде не используется; даже если ваша схема URL-адресов кажется вам удобной, мало кто ее попробует, и она может привести к непредсказуемым результатам, потому что значение подстановочных знаков в URL трудно различить. (Я не мог сказать, что значат все ваши примеры, пока не прочитал ваши описания.)
Не только это, но может быть несколько более смысловых / значимых способов сделать то, что вы описываете. Например, вы можете добавить строку запроса и использовать переменные 'find' и 'where', чтобы сообщить своему методу, что искать где:
Найти страницы, начинающиеся с «поисковая фраза» в /some/folder/
:
example.com/some/folder/?find=search-phrase&where=start
Найти страницы с «поисковой фразой» в любом месте:
example.com/some/?find=search-phrase&where=anywhere
Чтобы показать все страницы, я бы использовал отдельный метод под названием «все» вместо строки запроса или подстановочного синтаксиса:
example.com/some/folder/all
Синтаксис строки запроса встречается гораздо чаще, чем звездочки - посмотрите в адресной строке, например, в следующий раз, когда вы выполните поиск в Google, - и вам, вероятно, будет проще его кодировать.
Наконец, если вам не нравится внешний вид строк запроса, вы можете добавить имя метода с именем 'search', а затем использовать следующие два блока в качестве переменных 'find' и 'where'. например, вместо:
example.com/some/folder/?find=search-phrase&where=start
Вы могли бы иметь:
example.com/some/folder/search/search-phrase/start
Затем вам просто нужно проверить ключевое слово «search» в вашем URL-пути и активировать метод поиска, используя следующие два сегмента пути в качестве переменных.
ОБНОВЛЕНИЕ: я нашел свою первую звездочку в URL сегодня. Новый интерфейс archive.org использует его в точности так, как вы его описали (как часть функции поиска), вместо ключевого слова «all». например:
http://wayback.archive.org/web/*/http://google.com
вместо того
http://web.archive.org/web/20040214050058/http://www.google.com/
Первый пример возвращает архивированные списки со всех дат для google.com, а не только страницы с определенной датой (второй пример). Интересно, что я не могу ссылаться на живую страницу здесь, потому что сайт Stack Exchange кодирует *
символ так, как %2a
он появляется в URL, что приводит к 404 из archive.org. (Возможно, еще одна причина не использовать звездочки в URL.)
Я все еще думаю, что это не так ясно, как «все», но, если вы ищете примеры других сайтов, использующих звездочки в своих URL, это первый, который я видел.