JMeter发送post请求

jmeter发送post请求出现错误:
Resolved exception caused by Handler execution: org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'text/plain;charset=UTF-8' not supported
原因:

请求媒体不支持,需要设置复合接口能接受的媒体

HTTPpost请求参数设置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pFQYF3id-1683621384657)(JMeter发送post-json数据请求.assets/截屏2023-05-09 15.44.35.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dCishTQm-1683621384658)(JMeter发送post-json数据请求.assets/截屏2023-05-09 16.05.00.png)]

Post请求的数据类型包括

  • form-datform-data
    

    以键值对的方式提交数据。

    对于一段utf8编码的字节的数据,直接将utf8编码字节的拼接到请求体中,在本地有多少字节实际就发送多少字节,极大提高了效率,适合传输长字节。

    因此在传很长的字节(如文件)时应用multipart/form-data格式。

    总结:

    • 不对提交的表单数据进行字符编码。
    • 在使用包含文件上传控件的表单时,推荐使用该值。
    • 可以上传键值对,也可以上传文件。
    • 可以上传多个文件。
  • x-www-form-urlencoded
    

    会将表单内的数据转换为键值对,而且键值对都是通过&间隔分开的

    。当需要模拟表单上传数据时,用此选项。

    它是Post提交的默认格式,在发送数据前编码所有字符,采用ascii字符编码,将非ascii字符做百分号编码,所以对于非ascii字符传输效率就很低了。

    但此表单不能上传文件,只能是文本格式。

    总结:

    同样使用URLencode转码,Post请求方式跟Get请求方式的区别在于:

    • Get请求方式把转换、拼接完的字符串用?直接与表单的action连接作为URL使用,所以请求体里没有数据。
    • Post请求方式把转换、拼接后的字符串放在了请求体里,不会在浏览器的地址栏显示,因而更安全一些。
  • raw
    可以上传任意格式的文本类型数据,文本不做任何修饰传到服务端,可以上传txtJavaScriptjsonxmlhtml等格式的数据。
    其实主要的还是传递json格式的数据,当后端要求json数据格式的时候,就要使用此种格式来测试。

  • binary
    相当于Content-Type:application/octet-stream,只可以上传二级制数据,通常用来上传文件,但一次只能上传一个文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值