2.2 取样器
1 HTTP请求
HTTP请求是用于模拟单独的HTTP请求的。通过右键点击菜单,选择“添加->取样器->HTTP请求”而获得。
(一)基本标签。
基本标签其界面如图62所示。
图62 HTTP请求
- 协议:向目标服务器发送HTTP请求时的协议,包含http和https两种协议,大小写不敏感,默认为http。
- 服务器名称或IP:HTTP请求发送的目标服务器名称或者IP地址,比如www.baidu.com。
- 端口号:目标服务器的端口号,默认值为80。
- HTTP请求:发送HTTP请求的方法,包括GET、POST、PUT、HEAD、DELETE、OPTIONS、TRACE、CONNECT常用的请求方法,和一些JMeter自定义的请求方法,在一般情况下GET和POST请求方法最常用。
- 路径:目标的URL路径(不包括服务器地址和端口号)。
- 内容编码:内容的编码方式,默认为ISO8859,中文格式的网页,建议改为utf-8。
- 跟随重定向:如果选中该项,发出的HTTP请求得到响应是3XX,JMeter不会重定向到指定的界面。
- 跟随重定向:如果选中该项,发出的HTTP请求得到响应是3XX,JMeter会重定向到指定的界面。跟随重定向与跟随重定向只能选一个。
- 使用 keep Alive:JMeter和目标服务器之间使用Keep-Alive方式进行HTTP通信(默认是选中的)。
- 对POST 请求使用multipart/from-data。
Ø multipart/form-data的基础方法是POST,也就是说是由POST方法来组合实现的
Ø multipart/form-data与POST方法的不同之处在于请求头和请求体。
Ø multipart/form-data的请求头必须包含一个特殊的头信息:Content-Type并且值也必须规定为multipart/form-data,同时还需要规定一个内容分割符用于分割请求体中的多个POST内容,对于文件内容和文本内容自然需要分割开来,不然接收方就无法正常解析和还原文件了。具体的头信息如下。
Content-Type: multipart/form-data; boundary=${bound}
- 参数、消息体数据和文件上传。
Ø 参数是指函数定义中参数,而argument指的是函数调用时的实际参数。
Ø 简略描述为:parameter=形参(formal parameter),argument=实参(actual parameter)
Ø 在不很严格的情况下,现在二者可以混用,一般用argument,而parameter则比较少用。
Ø 消息体数据指的是实体数据,就是请求报文里面主体实体的内容,一般我们向服务器发送请求,携带的实体主体参数,可以写入这里。对于POST请求的参数,均为消息体数据。
Ø 文件上传指的是从HTML文件获取所有内含的资源:被选中时,发出HTTP请求并获得响应的HTML文件内容后还对该HTML。
- 当选择参数和消息体数据的时候,操作按键同用户定义的变量中的操作按键,参见图44所示。当选择文件上传,操作按键如图63所示。
图63 HTTP请求秀选择文件上传的操作按键
Ø【添加】:开始添加。
Ø【浏览hellip;】:通过弹出资源管理器窗口选择上传文件。
Ø【删除】:删除已经选择的文件。
(二)高级标签
HTTP请求的高级标签与HTTP请求默认值高级标签完全一致,参看图63。