Разница между http://+:8080/ и http://*:8080/ - PullRequest
7 голосов
/ 27 февраля 2012

Каковы различия между этими двумя префиксами в терминах HttpListener или любых других?

http://+:8080/

http://*:8080/

Ответы [ 2 ]

12 голосов
/ 27 февраля 2012

http://*:8080/: получение всех HTTP-запросов на порт 8080, которые не уже обрабатываются другими HttpListener.

http://+:8080/: получение всех HTTP-запросов на порт 8080 даже , если они уже обработаны другим HttpListener.

1 голос
/ 22 января 2015

В дополнение к замечательному ответу @ Paulpro, ссылка , опубликованная @rownage (см. ответ ), предоставляет дополнительную информацию о разнице:

Сильный подстановочный знак (знак плюс +)

Когда хост-элемент UrlPrefix состоит из одного знака плюс (+), UrlPrefix соответствует всем возможным именам хостов в контексте его схема, порт и относительные элементы, и попадает в сильные категория подстановочных знаков.

Сильный подстановочный знак полезен, когда приложение должно обслуживать запросы адресованы одному или нескольким относительным адресам независимо от того, как эти запросы поступают на компьютер или на какой сайт они указывают их заголовки хоста. Использование сильного подстановочного знака в этой ситуации позволяет избежать необходимость указания исчерпывающего списка хостов и / или IP-адресов.

Слабый подстановочный знак (Звездочка *)

Когда в качестве хоста появляется звездочка (*) элемент, то UrlPrefix попадает в категорию слабых подстановочных знаков. Этот тип UrlPrefix соответствует любому имени хоста, связанному с указанная схема, порт и относительный адрес, который еще не был соответствует строгому шаблону, явному или IP-привязанному слабому символу URLPrefix.

Эта спецификация хоста может использоваться в качестве стандартного универсального сообщения в некоторых обстоятельства, или могут быть использованы для указать большой раздел URL Пространство имен без необходимости использовать множество UrlPrefixes.

...