WCF URL主机段已更改为完整域名

时间:2009-02-20 16:36:08

标签: c# wcf

我有一个页面通过AJAX从WCF REST服务获取HTML内容。我开始在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 ...”

如何在WCF服务中获取最初请求的URL?我检查过WebOperationContext.Current.IncomingRequest.UriTemplateMatch属性无济于事,没有剩余的“localhost”跟踪。我还查看了以下帖子,仍然找不到原始网址:

What is the WCF equivalent of HttpContext.Current.Request.RawUrl?

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

有没有办法达到目的?

1 个答案:

答案 0 :(得分:0)

请注意,在IIS中运行的任何服务都将使用IIS绑定中指定的主机名。要更改此设置,您需要更改IIS中的设置。