【问题标题】:Bad request as a response in jmeter错误请求作为 jmeter 中的响应
【发布时间】:2019-07-11 11:14:48
【问题描述】:

我在 jmeter 中使用 POST 请求,如下所示,

POST https://aumaz-ap-perf-ess-web-2.aumaz-ase-dev002.p.azurewebsites.net/signalr/connect

POST data:
clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22bulkprocesshub%22%7D%5D&connectionToken=DWGWhf7zGj9TyO4cZn2kqH%2Bennba0V7qyAuAE2wIeu3vIoj%2FrLXemcaBz%2Fto3JjEs%2BaVviiFagxtax8E9PbE36cnBAlrByzw5qBwmIu9glop75vPY3XI0me52yTDiWC%2B9Zoalg%3D%3D&processId=b47fe282-8112-4a11-a18c-7629ac31b816&transport=longPolling

Request Headers:
X-Requested-With: XMLHttpRequest
Accept: text/plain, */*; q=0.01
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Referer: https://aumaz-ap-perf-ess-web-2.aumaz-ase-dev002.p.azurewebsites.net/ESS/DataType
Connection: keep-alive
Connection: keep-alive
Host: aumaz-ap-perf-ess-web-2.aumaz-ase-dev002.p.azurewebsites.net
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Length: 315
Content-Type: application/x-www-form-urlencoded; charset=UTF-8

如果我在浏览器中使用相同的 POST 请求,我可以获得准确的响应。但在 jmeter 中,我收到的响应是错误请求。

到目前为止,我使用的是 jmeter 3.01,并且我已经安装了所有需要的证书。任何人都可以为此提供解决方案

【问题讨论】:

  • 请检查您在浏览器中发送的数据是否与您在 POST 请求中发送的数据相同。如果您详细说明您的http请求会很好
  • 是的。我已经从 jmeter 复制了这个请求。如果我在浏览器中尝试它的工作。此应用程序 url 只能在我的公司代理下工作。我检查了数据,它是正确的。我无法从任何博客中找到有关此错误请求的任何完美帮助。 processId bed99fa8-c454-420a-a8cf-24d10b0226af connectionData [{"name":"bulkprocesshub"}] connectionToken m4mG4TcbGGOfxUBEqV8Nn0z0hRAXKzrasvoY6IRDyXeUia6+gXJFFs5bNF1ivWFWz+KLBg3tJWohv8ZgFgq97HgcG46zE+TmyNvlJ41QipSjWIxbCUIVd+hXJbvzXpDJt2KWTA== clientProtocol 1.5 transport longPolling
  • 尝试将 Content-Type 添加为 application/json
  • 刚刚尝试不工作,得到相同的错误请求。并使用开发人员工具复制了这些标题。
  • @PoorvajaDeshmukh 有没有像 jmeter 这样的东西会阻止某种请求?因为我已经提取了所有动态值并且提取是正确的,因为如果我在浏览器中发出相同的请求,我可以看到完美的响应。

标签: jmeter


【解决方案1】:

这里最大的问题似乎是服务器没有响应请求有什么问题的任何细节。对吗?

然后做两件事:

1) 安装 Fiddler,通过浏览器捕获您发送的内容,并通过 JMeter 进行比较。

这可能会让您知道有什么区别。

2) 访问服务器日志并查看发生了什么,可能有更多关于为什么请求被视为无效的内在信息。

【讨论】:

    【解决方案2】:

    我终于找到了解决办法。如果我在参数中传递这些参数,它不起作用,但我在路径本身中用 & 给出了所有参数。

    并使用${__urlencode{parameter}} 对作为编码值传递的参数进行编码,然后我没有遇到任何错误请求问题。

    即使是现在,我也不知道它是如何工作的。不过最终通过这种方式得到了解决方案。

    【讨论】:

      猜你喜欢
      • 2019-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-08
      • 2018-09-20
      • 2012-06-03
      相关资源
      最近更新 更多