Сегмент хоста URL WCF изменен на полное доменное имя - PullRequest
2 голосов
/ 20 февраля 2009

У меня есть страница, извлекающая содержимое HTML из службы WCF REST через AJAX. Я начал видеть ошибки в IE о том, что «Эта страница обращается к информации, которая не находится под ее контролем ...». Для некоторого содержимого служба WCF вместо непосредственного возврата содержимого возвращает объектный тег или тег iframe, указывающий на себя с другими параметрами. Служба WCF видит URL-адрес, отличный от запрошенного, и это несоответствие вызывает ошибку безопасности, поскольку IE считает, что загружает контент из другого домена.

Так, например, запрос XHR запросил

"http://localhost/Services/Content.svc?id=123..." или даже «http://mymachine/Services/Content.svc?id=123..."

Как только запрос достигает службы WCF, URL-адрес превращается в:

"http://mymachine.mydomain.com/Services/Content.svc?id=123..."

Как я могу получить первоначально запрошенный URL в службе WCF? Я проверил свойства WebOperationContext.Current.IncomingRequest.UriTemplateMatch безрезультатно, не осталось следов «localhost». Я также просмотрел следующие сообщения и до сих пор не могу найти исходный URL:

Что такое WCF-эквивалент HttpContext.Current.Request.RawUrl?

http://jstawski.com/archive/2008/05/01/wcf-wsdl-location-address-with-https.aspx

Есть ли способ добраться до него?

1 Ответ

0 голосов
/ 04 ноября 2010

Помните, что любая служба, работающая в IIS, будет использовать имя хоста, указанное в привязках IIS. Чтобы изменить это, вам нужно изменить настройки в IIS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...