Jmeter中的302重定向&自定义参数&csrfmiddlewaretoken接口实战!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter中的302重定向&自定义参数&csrfmiddlewaretoken接口实战!相关的知识,希望对你有一定的参考价值。
参考技术A前言
1.公司目前还有几个web项目是前后端不分离的,返回的内容不是那种json格式,返回的是一个html页面。
2.并且有些参数是隐藏在html里面的,需要先从html页面中取出隐藏参数(具体参数视项目而定),如:
__VIEWSTATE 、__VIEWSTATEGENERATOR
3.__VIEWSTATE 、__VIEWSTATEGENERATOR是每次在浏览器上打开登录首页的时候,会自动生成一个隐藏(hidden)的参数。
场景案例
1.登录接口需要用到隐藏参数
2.302重定向的登录接口
环境
1.JMeter5.1
步骤:
1.在登录之前我们必须先获取到:__VIEWSTATE 、__VIEWSTATEGENERATOR 这个2个参数的值。
先访问首页 http://127.0.0.1:9000/Login.aspx/
返回的结果里面有了这个值后,接下来用 XPath 提取器提取出来
2.XPath 提取器
第一步:使用 xpath 表达式提取html页面数据,咱先在谷歌浏览器上定位调试一下,保证能正确定位到。
第二步:用 XPath 表达式提取
XPath 表达式提取参数说明:
APPly to:作用范围(返回内容的断言范围)
参数关联
登录请求fiddler抓包参数如下:
添加头部管理器,
参数类型为:
Content-Type:application/x-www-form-urlencoded
Referer: http://127.0.0.1:9000/Login.aspx?Loginstatus=out (防盗链,这个参数视项目而定)
查看请求结果,从结果里面可以看出:__VIEWSTATE 、__VIEWSTATEGENERATOR 这2个值已经传过来了。
响应数据中查看结果,结果为:尚未登录系统或登录已超时,这是因为缺少cookie 参数;
我这里用的是:Jmeter5.1 版本,直接加一个HTTP Cookie管理器放到请求的最前面,就可以自动管理cookies了。
看到网上有些教程说要把 jmeter.property文件中将 CookieManager.save.cookies 设置为true,我这里 Jmeter5.1 版本不用设置也成功了。
重定向请求
1.因为请求登录成功后有302重定向到: http://127.0.0.1:9000/index.aspx 页面, 重定向后的页面,需要带上前面的cookie才能访问成功!
2.现在再返回来看之前登录接口的:Request Body中的参数,正是因为没有cookies 参数所以才导致登录接口返回:尚未登录系统或登录已超时!的提示。
3.问题我们现在已经知道了,只需在请求的最前面加一个 HTTP Cookie管理器 就可以了。不需要去提取cookies,再去添加到cookie管理器。
HTTP Cookie管理器 添加后会自动保存你每次请求的cookies,后续的请求都会带上前面的cookies,就跟你正常访问浏览器是一样的。
302 重定向
查看结果,因为这个登录请求是有302 重定向的,所以结果有2个请求的结果,可以展开查看。
第1个请求获取到cookies了,302 重定向到 /index.aspx 页面
第2个请求会拿着前面的cookies 自动带上,可以查看第2个请求的请求body
最后查看结果请求成功!(建议查看结果模式为:HTML)
Facebook重定向像素参数选项进行重定向?
我一直在寻找可以附加到Facebook“网站自定义受众”的网址参数列表。
<img src="https://www.facebook.com/tr?id=123456789&ev=PageView" width="1" height="1">
具体来说,是否有一个我可以添加的URL参数将在Facebook cookie放置后重定向到另一个跟踪像素?就像是:
<img src="https://www.facebook.com/tr?id=123456789&ev=PageView&redir=https://www.tracker.com/pixel?id=abc" width="1" height="1">
我知道其他广告平台支持这种方法 - 但是还没有找到FB的那些方面。
如果您知道可以添加的任何其他参数选项以自定义像素丢弃,则可以获得奖励积分。
Facebook不支持这一点。
你能用两张图片吗?
以上是关于Jmeter中的302重定向&自定义参数&csrfmiddlewaretoken接口实战!的主要内容,如果未能解决你的问题,请参考以下文章