当前位置:  开发笔记 > 编程语言 > 正文

在WCF中获取调用者的主机名

如何解决《在WCF中获取调用者的主机名》经验,为你挑选了1个好方法。

我正在用WCF服务替换现有的Web服务,作为迁移的第一步,我将使用BasicHttpBinding公开端点,直到客户端在今年晚些时候升级.

计划是使用Windows服务托管新的WCF服务(该服务只能在Intranet内调用,因此不需要HTTP),但是暴露基本HTTP和Net.TCP端点,以便迁移可以在阶段.

但是,我在WCF服务中获取调用者的主机名时遇到一些麻烦,查看当前使用Context.Request.UserHostName获取主机名的Web服务代码.我设法得到了呼叫者的用户名和IP地址,但环境中所有相关的权限/安全服务都使用主机名而不是IP,所以有什么方法可以让我在我的服务中获取HostName吗?

PS我已将安全模式设置为TransportCredentialOnly,并将clientCredientialType设置为Windows



1> casperOne..:

由于您不是在IIS中托管,因此无法使用ASP.NET兼容模式来访问HttpContext通常存在于ASP.NET进程中的模式.

相反,您可以在命名空间中的类上使用该GetHostEntry方法来获取将包含您获取的IP地址的别名(DNS名称)的实例.DnsSystem.NetIPHostEntry

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有