【发布时间】:2020-11-17 18:33:46
【问题描述】:
我正在尝试向 Web 服务器发送 POST 请求。该调用在 JMeter 中进行了测试。
现在我得到了以下代码:
//HEADER SECTION
post.setHeader("Connection","keep-alive");
post.setHeader("Host", "http://sv2XXX.XXX.XXX.XXX.com:8080");
post.setHeader("Content-Type", "text/plain");
//BODY SECTION
ArrayList<NameValuePair> urlParameters = new ArrayList<NameValuePair>();
urlParameters.add(new BasicNameValuePair("","<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\" xmlns:api=\"http://api.XXX.XXX.XXX.com/\">" +
"<soap:Header>" +
"<api:userid>USER1</api:userid>" +
"</soap:Header>" +
"<soap:Body>" +
"<api:executeAbout>" +
"<About/>" +
"</api:executeAbout>" +
"</soap:Body>" +
"</soap:Envelope>"));
post.setEntity(new UrlEncodedFormEntity(urlParameters));
这会导致“400 Bad Request”错误。在我看来,这是由参数声明中的空名称引起的。但我不知道怎么称呼它。有什么想法吗?
【问题讨论】:
-
我不知道 JMeter,但你的信封不应该在你的请求正文中,而不是在参数中吗?
-
@PierreSevrain 感谢您的想法。我刚刚找到了这个stackoverflow.com/questions/18188041/… 并将对其进行测试。
-
这不起作用。我仍然收到错误请求错误。
标签: java jmeter http-post url-parameters http-post-vars