当前位置: 首页 > 知识库问答 >
问题:

JMeter-使用POST变量发送HTTP请求时出现问题?

酆光熙
2023-03-14

我正在尝试加载测试从存档数据库中获取记录的java servlet。

servlet的工作原理如下:

  • 1-从HTTP头读取post变量
  • 2-使用变量查询数据库
  • 3-XML

我已经设置了一个测试,我想用post变量触发HTTP请求,但是测试不起作用,J Meter出现错误。

我已将CSV文件放在保存我的测试计划的同一文件夹中!

这是错误输出:

线程名称:线程组1-1示例开始时间:2012-11-20 10:35:27 GMT加载时间:0延迟时间:0字节大小:1113标头字节大小:0正文字节大小:1113示例计数:1错误计数:1响应代码:非HTTP响应代码:java。网URISyntaxException响应消息:非HTTP响应消息:索引13处IPv6地址的预期结束括号:HTTP://[http://sophos1.testserver.co.uk/servlet/archive]:61061/

响应标题:

HTTPSampleResult字段:ContentType:DataEncoding:null

发帖请求

POST http://[http://sophos1.testserver.co.uk/servlet/archive]:61061/

POST data:


[no cookies]

返回的数据

java.net.URISyntaxException: Expected closing bracket for IPv6 address at index 13: http://[http://sophos1.testserver.co.uk/servlet/archive]:61061/
        at java.net.URI$Parser.fail(Unknown Source)
        at java.net.URI$Parser.failExpecting(Unknown Source)
        at java.net.URI$Parser.parseServer(Unknown Source)
        at java.net.URI$Parser.parseAuthority(Unknown Source)
        at java.net.URI$Parser.parseHierarchical(Unknown Source)
        at java.net.URI$Parser.parse(Unknown Source)
        at java.net.URI.<init>(Unknown Source)
        at java.net.URL.toURI(Unknown Source)
        at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:232)
        at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62)
        at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1075)
        at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1064)
        at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:426)
        at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:255)
        at java.lang.Thread.run(Unknown Source)

请帮忙!

谢谢

共有3个答案

公西永嘉
2023-03-14

检查ServerNameIP字段中是否有空格。

这给了我一个错误:

响应消息:非HTTP响应消息:索引7权限中的非法字符:

当额外的空间在一开始被修剪时,效果很好。

濮献
2023-03-14

简单的方法是您可以将服务器名称留空并将路径设置为

http://sophos1.testserver.co.uk/servlet/archive

翟渝
2023-03-14

从http请求采样器的服务器名称/IP字段中删除http://(在http请求字段描述中指出)。

在上面的描述中查看您生成的POST请求:

POST Request
POST http://[http://sophos1.testserver.co.uk/servlet/archive]:61061/

改为按以下方式配置HTTP请求:

Server Name: sophos1.testserver.co.uk
Path: /servlet/archive
Implementation: Java
 类似资料:
  • 问题内容: 让我们假设这个网址… (此处的ID需要在POST请求中发送) 我想将其发送到服务器的,该服务器在POST方法中接受它。 如何在Java中执行此操作? 我尝试了这个: 但是我仍然不知道如何通过POST发送 问题答案: 由于原始答案中的某些类已在Apache HTTP Components的较新版本中弃用,因此,我将发布此更新。 顺便说一句,你可以在此处访问完整的文档以获取更多示例。

  • 我正在尝试使用ajax发送post请求,但始终出现以下错误: XMLHttpRequest无法加载http://192.168.1.123:8080。对预检请求的响应无法通过权限改造检查:请求的资源上不存在“访问控制允许源”标头。因此不允许访问源“http://localhost:8080”。 这是我的代码

  • 问题内容: 我正在尝试发出POST请求以检索有关一本书的信息。这是返回HTTP代码的代码:302,已移动 当我从浏览器尝试时,可以从以下页面进行操作:http : //www.bkstr.com/webapp/wcs/stores/servlet/BuybackMaterialsView?langId=-1&catalogId=10001&storeId=10051&schoolStoreId=1

  • 问题内容: 我正在使用下面的代码发送http POST请求,该请求将对象发送到WCF服务。可以,但是如果我的WCF服务还需要其他参数怎么办?如何从Android客户端发送它们? 这是我到目前为止编写的代码: 问题答案: 使用POST发布参数: 你错过的部分在以下内容中,即如下。 其余的事情你都可以做到。

  • 任何指针都会有帮助,我试着玩contentTypes,但还是没有运气

  • 本文向大家介绍php 利用socket发送HTTP请求(GET,POST),包括了php 利用socket发送HTTP请求(GET,POST)的使用技巧和注意事项,需要的朋友参考一下   今天给大家带来的是如何利用socket发送GET,POST请求。我借用燕十八老师封装好的一个Http类给进行说明。   在日常编程中相信很多人和我一样大部分时间是利用浏览器向服务器提出GET,POST请求,那么可