zoukankan      html  css  js  c++  java
  • charles实践-通过断点调试修改request

    本文尝试总结一下平时使用charle的习惯,并举例说明如何进行断点调试

    charles的安装配置

    关于charles的安装、抓包配置(pc端配置、移动端配置)网上有很多资料,不再重复了

    一个传送门:charles证书安装

    一些常见的问题:

    1、pc端无法抓到请求

    检查有无勾选  “Proxy-macOS Proxy”(只有勾选上才能正常抓到请求)

     2、手机之前能抓到请求,但是后来抓不到了

    可以尝试重新安装一下证书,手机浏览器输入"chls.pro/ssl"重新安装证书

    修改request

    对于某些限制输入字符数的输入框,一般前端会加上限制,通过抓包其实可以绕过前端校验的,所以更严谨的做法是从接口层面就加上限制
    下面举个例子,如何绕过前端,发送超长字符
     
    例如,如下的“活动名称”前端限制输入50个字符

     1、针对该请求打上断点

     2、打开Breakpoints Settings对该断点请求进行相关设置

    双击一个请求,会弹出针对这个请求的断点编辑窗口

      将Query中的内容删除,输入*;
      如果修改Request数据,就将Request勾选;
      如果修改Response数据,就将Response勾选;
      这里只勾选Request

    3、再次触发该请求,charles自动跳转到Breakpoints页面

    切换到【Edit Request】标签,然后底部切换至text标签,修改请求内容

    结果如下:

    进一步,由于后端没有限制输入字符,那么我们修改name参数至很长很长,甚至超过数据库定义的字段长度,看看会发生什么

    发现返回系统异常了,这里如果较真的话其实可以提一个接口bug,后端接口定义不够严谨

    关于修改response其实和修改request类似,这里不再叙述了~

  • 相关阅读:
    selenium+python+API分类总结
    Web自动化测试之六、Selenium Web控件交互
    五、Selenium元素定位的八种方法
    五、X-PATH定位元素
    五、css_selector定位总结
    pytest测试框架实战一
    python实战2
    pycharm 远程开发
    python 虚拟环境
    爬虫案例_网易云歌单
  • 原文地址:https://www.cnblogs.com/hanmk/p/14403415.html
Copyright © 2011-2022 走看看