forked from hjzheng/CUF_PPTs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Fiddler的使用.html
139 lines (118 loc) · 5.04 KB
/
Fiddler的使用.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
<!doctype html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head>
<meta charset="utf-8">
<title>Fiddler的使用</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<link rel="stylesheet" href="css/reveal.min.css">
<link rel="stylesheet" href="css/theme/night.css" id="theme">
<link rel="stylesheet" href="lib/css/zenburn.css">
</head>
<body>
<div class="reveal">
<div class="slides">
<section>
<h2>使用Fiddler提高工作效率</h2>
<p>BY Hao Ju Zheng</p>
<p>github: <a href="https://github.com/hjzheng">https://github.com/hjzheng</a></p>
</section>
<section>
<h2>什么是Fiddler?</h2>
<div>官方地址:<a href="http://www.telerik.com/fiddler">http://www.telerik.com/fiddler</a></div>
<p>
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对Dev还是QA来说,都有很大的帮助。(千万不要告诉QA,要不然Dev会死的很惨,开个玩笑)
</p>
</section>
<section>
<h2>Fiddler原理</h2>
<figure>
<img src="./img/fiddler_1.png"/>
</figure>
<p>
说白了, Fiddler就是夹在客户端和服务器端的一个代理, 劫持http请求和返回,从而达到双向欺骗效果
</p>
</section>
<section>
<h2>Fiddler中Dev常用功能</h2>
<ul>
<li>设置断点修改Request请求参数</li>
<li>设置断点修改Response返回</li>
<li>创建AutoResponder规则</li>
</ul>
</section>
<section data-markdown>
<script type="text/template">
##设置断点修改Request请求参数
- 在Fiddler命令行中执行
```shell
bpu http://9.111.244.79:8080/platform/j_spring_security_check
```
- 重新登录HPC, 你会发现该请求被劫持,然后在Inspectors中修改登录的用户名和密码
- 可以使用下面命令取消断点
```shell
bpu
```
</script>
</section>
<section data-markdown>
<script type="text/template">
##设置断点修改Response返回
- 在Fiddler命令行中执行
```shell
bpafter http://9.111.244.79:8080/platform/pcm/networks/getNetworkSummary.action
```
- 在该页面重新执行该请求,在raw中修改JSON数据,以达到自己的目的
- 可以使用下面命令取消断点
```shell
bpafter
```
</script>
</section>
<section data-markdown>
<script type="text/template">
##创建AutoResponder规则
这个功能类似于chrome dev tools的workspace功能,只不过它不仅可以替换js文件,也可以替换任何http请求的返回。
在AutoResponder中建立相应的规则即可,即可替换文件,又可以模拟404,500等服务器返回状态。
</script>
</section>
<section data-markdown>
<script type="text/template">
##扩展阅读:
- [Fiddler教程][0]
- [Fiddler快捷命令][1]
- [Fiddler简单的并发和安全测试][3]
[0]:http://www.cnblogs.com/TankXiao/archive/2012/02/06/2337728.html
[1]:http://www.telerik.com/fiddler
[2]:http://www.xuanfengge.com/fiddler2-shortcut-command-tutorial-translation.html
[3]:http://www.justwinit.cn/post/4605/
</script>
</section>
<section>
<section>
<h2>谢谢观赏</h2>
<h3>2014-09-01</h3>
<p>如果你喜欢,请<a href="https://github.com/hjzheng/CUF_PPTs">star</a>我</p>
</section>
</section>
</div>
</div>
<script src="lib/js/head.min.js"></script>
<script src="js/reveal.min.js"></script>
<script>
Reveal.initialize({
history: true,
transition: 'linear',
progress: true,
math: {
// mathjax: 'http://cdn.mathjax.org/mathjax/latest/MathJax.js',
config: 'TeX-AMS_HTML-full'
},
dependencies: [
{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
{ src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } }
]
});
</script>
</body>
</html>