如果有多个IP地址的请求,我怎样才能获得用于请求的服务器地址?
E.g。
到目前为止,我才发现
OperationContext.Current.EndpointDispatcher.EndpointAddress
和OperationContext.Current.Channel.LocalAddress
包含.config中的地址(例如localhost)
OperationContext.Current.IncomingMessageProperties.Via
包含客户端用于连接服务器的Url(但这可能只是客户端主机文件中的名称)。
编辑:仍在寻找解决方案......
答案 0 :(得分:0)
没有任何额外的帮助和工作,我认为你不能得到这个。
客户端向URL发送消息 - 消息被序列化,发送,处理和发回。你可以查询没有“常设连接”,服务器没什么可告诉你的。
您可以做的是创建一个Message Inspector扩展,可以在服务器端注册,并将服务器的本地IP写入标题字段,然后您可以在客户端进行检查。
谷歌或Bing为“WCF消息检查员”你应该找到一些点击 - 一些更好的点击: