Jmeter 2.12。
我在反向代理Apache之前使用了一个完全正常运行的场景。最近我们用F5 BIGIP技术替换了反向代理,现在我的方案仍然存在。
问题是特定的ajax POST请求HTTP响应被截断:我收到200 OK但HTML内容不满(例如没有html标签)。当我用Firefox发布相同的请求时,完整的内容是可以的。 请注意,我没有收到http标头Transfer-Encoding:chunked。
在这种情况下,Firefox和JMETER之间有什么区别? 任何人都知道如何获得完整的HTML响应?
感谢您的回复。
答案 0 :(得分:0)
这完全取决于您的F5上的设置以及您的确切含义"响应被截断"和#34;没有HTML标签"。你得到了正确的答案但是html标签被删除了吗?或者只是截断响应,所以你只得到前n个字节?
找出实际出错的最佳方法是在中间使用类似fiddler的东西,并尝试找出响应之间的真正差异,特别是关于响应头(Content-Length,Transfer-Encoding等)。
当您发现实际差异时,请在此处发布,以便我们为您提供进一步的帮助。
在旁注中,您是否有机会对f5(iRules)进行一些自定义编码,以响应不同的用户代理设置?
答案 1 :(得分:0)
鉴于您发送相同的请求,您应该收到相同的回复。
使用JMeter的View Results Tree侦听器检查请求详细信息,甚至更好地比较Firefox和JMeter使用较低级别网络嗅探工具(如Wireshark)发送的请求,检测差异并相应地配置JMeter以发送与Firefox相同的请求。
另一个原因可能是JMeter截断大响应,默认情况下JMeter显示"仅#34; View Results Tree监听器中的前10兆字节(如果是这种情况) - 您可以将下一行添加到 user.properties 文件中:
view.results.tree.max_size=0
并重新启动JMeter以选择属性 - 它将抑制响应截断,您将能够查看完整的响应数据。
设置属性的另一种方法是通过-J
命令行参数传递它,如:
jmeter -Jview.results.tree.max_size=0 ....
参考文献: