Сравните разные представления одного и того же URI - PullRequest
2 голосов
/ 09 февраля 2009

У нас следующая ситуация:

Клиенты отправляют события / сообщения на сервер через веб-сервис. Сервер может идентифицировать клиентов в соответствии с «URI отправителя». Теперь сервер должен распространить сообщение среди «заинтересованных слушателей».

Теперь клиент может сказать, что это, например, http://127.0.0.1:8000/ на сервере этот клиент настроен с http://localhost:8000. Uri.Compare () и Uri.Equals возвращают оба значения false.

Кто-нибудь знает алгоритм, который может идентифицировать URI со всеми его представлениями? Я имею в виду Localhost == 127.0.0.1 == "Реальный IP" == "DNS-имя"?

Спасибо Thomas

1 Ответ

0 голосов
/ 13 февраля 2009

Поскольку никто еще не опубликовал ответ, я останусь со своим собственным «алгоритмом» / методом, который пытается сравнить все различные представления.

Что я обнаружил: На сервере невозможно определить удаленный URL во всех случаях. Может быть так, что учетная запись пользователя или подсеть, в которой находится сервер, не имеет достаточных привилегий для определения, например, какой IP-адрес находится за именем Active Directory.

Таким образом, всегда будет проблема в том, что серверу требуется заполненный вручную файл или около того, который он использует в качестве базы для определения, знает ли он URI-адрес отправителя.

...