<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[[实践Ok]用Fiddler来调试web应用,用它做Flash的Post上传调试。]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Thu, 23 Jul 2009 08:39:18 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	来源：http://www.qgy18.com/tag/fiddler/<br/>在测试或者优化web应用时，经常需要替换一些静态资源，如css/image/js等。当然，这些工作是在开发环境来做，直接ftp替换也没什么问题。但有的时候仅仅是想调研一下而不想影响环境的稳定，或者想方便的对比两段代码效果，就可以利用一个小工具来完成工作——Fiddler。<br/>还有一个抓包工具wireshark ：<br/>抓包工具<br/>wireshark 非常详细的抓包工具，缺点是在拦截http的post数据上传时看不到上传的数据格式<br/>Fiddler&nbsp;&nbsp;微软开发的专用于拦截http请求的工具，亮点功能在于：1.可以直接查看到get&#92;post数据的内容 2.可以以多种方式浏览数据(text&#92;xml&#92;json) 3.可以直接模拟请求 包括模拟agent或者其他自定义头---一句话，非常强大的工具，信不信由你，我反正信了。<br/>================================================================================<br/>先来简单的介绍下Fiddler(官网&amp;#124;需要.NET Framework v2.0&amp;#124;MicroSoft出品)：一个集web性能分析、数据监测、自动响应、创建请求四大功能于一身，自带众多实用小工具，支持插件扩展的HTTP调试工具。通过简单的配置代理(IE中全自动、FF中需如下图手动配置)，就可以开始使用Fiddler了。<br/>在火狐浏览器菜单栏的“工具(T)”-&gt;&quot;选项(O)..&quot;-&gt;“高级”-&gt;“网络”-&gt;&quot;设置(E)...&quot;下选择“手动配置代理”<br/><a href="http://www.jackxiang.com/attachment.php?fid=15" target="_blank"><img src="http://www.jackxiang.com/attachment.php?fid=15" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/><br/><br/>这篇文章讲的只是利用fiddler来替换静态资源，利用的是它的自动响应功能。选择软件右侧的AutoResponder这个tab，点“Add”按钮来添加一条规则，在Rule Editor里的文本框填上要被替换资源的url，后面的文本框选择源文件就OK了。如下图：<br/><br/><a href="http://www.jackxiang.com/attachment.php?fid=14" target="_blank"><img src="http://www.jackxiang.com/attachment.php?fid=14" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/><br/>搞定，就这么简单，现在只要请求被命中，就会被转发到指定的源文件了。修改代码后保存一下F5就能生效，既方便又不会影响到他人。这个功能挖掘下还可以干一些其它有意思的事情：配置Rule时，选择转发404之类的错误码，就可以用来测试Ajax的onError事件；把类似于Http://www.***.com/1.html这样的url转发到本地页面，就可以在本地代码里用Ajax请求www.***.com的内容。由于本地页面是通过Http://www.***.com/1.html来访问，不再有跨域问题了。这在做一个获取数据程序的时候很有用。虽说最后还是要用后端程序来解决跨域问题，但开发前期利用Fiiddler做转发，非常的高效！<br/><br/><br/>用它做Flash的Post上传调试：<br/>1）打开fiddle2<br/>2）Flash进行POST上传下<br/>3）查看Fiddle：左边选 URl，右边点Inspector里的WebForms，下面看Response里的：TextView，如果是Json可以远json这一项能看到json格式给你封装展现好了的，也就是让你看到POST后的返回相关的数值。<br/>Array<br/>(<br/>&nbsp;&nbsp;&nbsp;&nbsp;[Filename] =&gt; video-2013-03-20-07-54-44.mp4<br/>&nbsp;&nbsp;&nbsp;&nbsp;[upload_file_name] =&gt; video-2013-03-20-07-54-44.mp4<br/>&nbsp;&nbsp;&nbsp;&nbsp;[upload_file_content_type] =&gt; application/octet-stream<br/>&nbsp;&nbsp;&nbsp;&nbsp;[upload_file_path] =&gt; /data/app/test.local/upload_tmp/0051067597<br/>&nbsp;&nbsp;&nbsp;&nbsp;[upload_file_md5] =&gt; 17e71fff75f6fe211d95e1f486e7185b<br/>&nbsp;&nbsp;&nbsp;&nbsp;[upload_file_size] =&gt; 25302039<br/>&nbsp;&nbsp;&nbsp;&nbsp;[Upload] =&gt; Submit Query<br/>)<br/><br/>其实上面还可以粗略看到Flash上传的一个协议，如相当于web里的form表单中的file域：<br/>------------gL6Ef1gL6GI3Ef1cH2GI3gL6gL6KM7<br/>Content-Disposition: form-data; name=&quot;Filename&quot;<br/><br/>video-2013-03-20-07-54-44.mp4<br/>------------gL6Ef1gL6GI3Ef1cH2GI3gL6gL6KM7<br/>Content-Disposition: form-data; name=&quot;upload_file&quot;; filename=&quot;video-2013-03-20-07-54-44.mp4&quot;<br/>Content-Type: application/octet-stream
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [实践Ok]用Fiddler来调试web应用,用它做Flash的Post上传调试。]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>