2017-02-15 48 views
0

Jmeter 2.12。F5 BIG IP - 带有HTTP响应截断的ajax POST

我在反向代理Apache前面使用了一个功能齐全的场景。最近我们已经用F5 BIGIP技术取代了反向代理,现在我的情况不变。

问题是针对特定的ajax POST请求HTTP响应被截断:我收到200 OK但HTML内容不满(例如没有html标记)。当我用Firefox发布相同的请求时,完整的内容是可以的。 请注意,我没有收到http标题Transfer-Encoding:chunked。

在这种情况下,Firefox和JMETER有什么不同? 任何人都有一个想法,我怎么能得到完整的HTML响应?

感谢您的回复。

+0

的响应不是很任何机会大?运行到JMeter最大响应大小? –

+0

尝试通过使用HTTP头管理器在JMeter HTTP请求中给出Firefox用户代理。服务器可能正在响应客户端。 –

+0

我已经检查过:这不是一个响应大小问题,也不是一个用户代理。 (使用firefox,请求返回38kb,使用JMETER 2kb)同样在我的场景中,先行ajax POST运行正常。 –

回答

0

完全取决于F5上的设置,以及“响应被截断”和“无html标记”的含义。你得到正确的回应,但HTML标签被剥离?或者是刚截断的响应,所以你只能得到前n个字节?

找出实际出错的最好方法是在中间使用像fiddler这样的东西,并尝试找出响应之间的真正区别,特别是关于响应头(Content-Length,Transfer-Encoding等) 。

当你发现实际的差异,请张贴在这里,所以我们可以帮助你进一步。

在旁注中,您有没有对f5(iRules)有不同的用户代理设置的自定义编码?

0

鉴于您发送相同的请求,您应该会收到相同的回复。

使用JMeter的View Results Tree监听器检查请求的详细信息,甚至可以更好地比较其正在由Firefox和JMeter的使用像Wireshark下级网络嗅探工具发送的请求,检测差异并相应地配置JMeter的发送相同的请求(S )像Firefox一样。

另一个原因可能是JMeter的截断较大的反响,在默认情况下JMeter的显示“只”第一10兆字节在查看结果树监听器,如果是这样的话 - 你可以在下一行添加到user.properties文件:

view.results.tree.max_size=0 

并重新启动JMeter来选择属性 - 它会抑制响应截断,您将能够查看完整的响应数据。

设置属性的备选方式是通过-J命令行参数传递给它,如:

jmeter -Jview.results.tree.max_size=0 .... 

参考文献:

+0

我已经比较了两个请求:唯一的区别是用户代理。在我的先例中,我已经告诉过大小的评论。 –