zoukankan      html  css  js  c++  java
  • 使用Trace Utility来跟踪Soap消息

    不管是Web Service还是微软的WCF,客户端和服务器端的交互方式都是通过Soap来进行的,借助一些Soap Trace工具可以对Soap信息尽心跟踪以发现其不为人知的秘密。写这篇文章的初衷,是为了更深入地理解证书,因为看了很多关于WCF的安全概念,很多 情况都使用到了证书,但就不没能明白原理,后来猜想是微软封装了底层,一旦做了相应的证书配置,底层会自动进行身份验证和加密解密。但一直停留在猜测上, 没找到证据来证明自己的猜想,一不小心发现了Trace Utility,才证明了自己的想法。概念上说可以追踪Tcp信息,但用才发现只能追踪Http消息。

    首先我们来讲讲Trace实现的基本原理。说的简单点Trace就是一个监听/转发器(Listening/Forwarding)。当我们启动这个工具 的时候,通过设置它监听的Port,和它将要转发的Host和Port(Destination Server& Destination Port),随后它就开始在本机的Listening Port开始监听,如果这时候一个针对该Listening Port 的Http Request,它就会把Request的内容取下来展现在我们的面前,随后将该Request转发到我们预先设定的Host和Port。说白了就是把要 发的消息先给我们查看和备份,我们再转发出去。

    下载SOAP Toolkit 3.0,安装后打开Trace Utility新建Formatted Trace,如下图:

    • Listen中的Local port是要监听的端口;
    • Forward to中的第一个Destination是要把监听端口的任何访问转发到的目标服务器地址;
    • Forward to中的第二个Destination是要把监听端口的任何访问转发到的目标端口;

    如在浏览地址栏输入:http://127.0.0.1:8080或者http://localhost:8080,将会自动转发到对http://www.google.com:80的访问:

    只要知道原理就好办了,在Webservice以及WCF示例我就不写了,很简单了。

    还有些其他Trace工具,大家可以玩下:

    出处:http://www.zhaiqianfeng.com    
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    linux系统调用之系统控制
    linux系统调用之文件系统操作
    使用EF框架实现MVC的增删改查功能
    MVC+EF快速弄出一个CRUD
    Entity Framework 全面教程详解(转)
    微信小程序学习
    为Bootstrap模态对话框添加拖拽移动功能
    Razor语法大全
    EXCEL怎么打20位以上的数字?
    C# SQLite 数据库操作学习
  • 原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4617978.html
Copyright © 2011-2022 走看看