首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WCF路由和服务元数据

WCF路由和服务元数据
EN

Stack Overflow用户
提问于 2012-11-03 18:23:37
回答 3查看 1.7K关注 0票数 7

我正在构建一个WCF路由器,它需要充当许多内部web服务(WCF和ASMX)的代理。路由部分相当简单,但是我不能理解服务元数据交换在这个解决方案中是如何工作的。

换句话说:客户端如何获取路由器后面的内部服务的元数据?我是否需要手动向使用者提供WSDL文件?我可以通过某种方式将路由器设置为返回相应内部服务的元数据吗?

或者我的架构完全错了?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-12 20:07:41

我在这里看到了两个选项:

  1. 如果你不想暴露内部地址,可以选择创建一个“非透明”代理。这样做的好处是,您可以做更多的事情,而不仅仅是路由消息(例如,这样的代理可以充当“安全边界”,解开加密的消息并将它们直接传递给内部端点)。它还可以提供“可互操作的级别”,使用相同的数据类型/消息XML结构将WCF服务公开为简单的SOAP。缺点是您必须随代理服务WSDL一起更新它的代码,您可以实现一个

重写器。使用它,您可以动态地屏蔽内部服务的URL --根据您的条件,一个简单的字符串替换可能足够,也可能不够。

请参阅:

  • Message Inspectors
  • IWsdlExportExtension
票数 4
EN

Stack Overflow用户

发布于 2013-11-10 23:13:44

同样的“路由器服务”也可以用来为路由器背后的内部服务获取单独的WSDL。

查看this thread

票数 1
EN

Stack Overflow用户

发布于 2012-11-13 09:03:53

您是否考虑过使用简单的HTTP代理?所有使用REST或SOAP的WCF都在其核心HTTP请求中。似乎路由功能(我假设您是基于主机名、URL路径或参数)可以通过代理HTTP请求来执行,而不需要了解内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13208232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档