1.打断点
(1)先手动执行一次,让请求出现在charles左边的会话列表中。
我们这里要查询物资名中包含“口罩”的物资信息。
(2)选中该会话,右键,选择Breakpoints
(3)刷新页面,这时候浏览器发出请求,停在了charles代理这里,还没有发到服务端。
刷新后会由浏览器界面自动跳转到charles界面中,点击Edit Request可以进行请求参数的修改。修改后点击下方的Execute,将请求发出去。
(4)收到服务器的响应后,点击Edit Response,修改响应内容,再次点击Execute,将响应返回给浏览器。
(5)浏览器展示返回的数据。
这里可以看到,我们本来是想查询“口罩”的信息的,通过修改请求的参数,服务端给我们返回了“体温计”的信息。
2.Map Local
(1)Tools→Map Local ,点击Add
或者也可以直接选中会话,右键,选择Map Local。这样打开进去的页面host、port等都已经自动填好了。
(2)填写Map From的协议、host、port、path等
(3)选择本地文件作为response返回。可以事先复制响应信息到json文件中,或者在右键→Save Response....保存到本地,再根据自己的需要修改。
(4)去浏览器发起请求。
设置好之后,所有符合条件的请求的响应内容都会用配置的本地文件进行替代。
可以看到,我现在在查找监测类的物资,但是显示的是我刚刚指定的json文件中的内容。
3.Map Remote
(1)Tools→Map Remote,勾选Enable Map Remote,点击Add,添加映射
(2)准备数据
在fastmock平台创建一个接口,返回登录失败的信息。这样不管登录名是否正确,都是收到登录错误的提示,无法登录进主页。
(3)发起请求
可以看到,mms的登录请求映射到了mock的接口