wcf基础知识之 查看soap消息 TcpTrace

今天本来准备了wcf的三种消息模式 wcf 基础知识 之 消息交换模式 response/reply oneway deplex  的介绍,但是考虑到里面有说到soap消息,但是可能还有一些朋友对如何查看soap消息还不是很清楚,所以这次先来把如何查看wcf通信的介质--soap消息介绍一下。

其实这个工具的使用非常简单,可以说如果知道了怎么做那是小学一年级的水平,但是我就曾经在这个一年级还浪费了好一些时间,所以为了避免浪费大家的时间,毕竟程序员的时间不是特别多。

TcpTrace 专业查看wcf通信的工具,使用非常简单,但是为了演示如何使用这个小工具,以及我们应该注意哪些地方,还是通过一个简单的例子来描述一下,这样有图有真相。

示例程序还是在原来我们一起做的那个示例项目上进行,因为涉及到的知识点很少,所以我们重点说如何使用工具,而把wcf的部分尽量简洁。

大家请注意我标红的那部分,那个是我们要使用到的服务地址,一个计算的服务地址。这是wcf服务器端的配置,准确的说这次介绍tcpTrace根本不需要这部分的出现,但是为了连贯性,以及可以让大家明白我在做什么,所以我还是把它贴出来了。

客户端的配置才是重点,首先我们定义了客户端终结点,制定了服务的地址,但是有一点我们需要注意,就是在我们添加了终结点行为的配置,并且我们制定了clientVia的值,clientVia是什么意思呢?我们可以理解成一个转发地址。也就是说我们如果制定这个clientVia的地址,那么客户端也会自动转发到真正的服务地址。这就相当于我们可以指定很多不同的clientVia的值,但是他们都是指向的同一个服务地址,这就会造成一个假象,就是我们创建了很多的服务,工作量很大,但是实际上我们就使用到了一个服务。

clientVia的值的设定是关键,这里我们设定它的地址的端口号为8083,而我们实际的服务的地址的端口号为9999.这就是我们在tcpTrace中药设定的两个端口号。

监听端口就是我们在clientVia中设定的端口号,而目标端口号则是实际的服务地址的端口号。当然服务器地址需要我们制定我们服务所在的地址,这里是本机,我们可以指定localhost或127.0.0.1.

tcptrace中的消息就是我们要监听的soap。我本来准备监听的是net.tcp,但是这个工具监听到的结果都是乱码,所以我最后还是改成了wsDualHttobinding的双工通信模式。

 

好了,我这里重点要说的就是客户端配置行为中的clientvia的设定,只要这个设定好了,我们就可以正常监听了。其实对于http的监听,flidder也是可以的,并且我想它的功能可能更强大一些。

赚钱是一种能力,花钱是一种水平,能力可以练,水平是轻易练不出来的。

年轻人不可以太狂。

 

posted @ 2013-04-05 23:24  baidixing  阅读(3324)  评论(1编辑  收藏  举报