【问题标题】:How can I send multipart/form-data in JMeter如何在 JMeter 中发送 multipart/form-data
【发布时间】:2020-03-04 10:30:11
【问题描述】:

我想在 JMeter 中发送如下请求负载:

------WebKitFormBoundaryeBikRH0JCrgmtTvt
Content-Disposition: form-data; name="name"

test
------WebKitFormBoundaryeBikRH0JCrgmtTvt
Content-Disposition: form-data; name="description"

testing
------WebKitFormBoundaryeBikRH0JCrgmtTvt
Content-Disposition: form-data; name="configFile"; filename="my-project-1513669048551-73373e5a6b29.json"
Content-Type: application/json


------WebKitFormBoundaryeBikRH0JCrgmtTvt--

所以我尝试在“参数”选项卡中添加名称和描述部分,并将表单数据作为内容类型,并在 HTTP 请求采样器的“文件上传”选项卡中添加文件。

这是执行后我在请求正文中得到的:

POST data:
--t9u984dDyYVtn6R0e8-OiZQyWRv9gk1
Content-Disposition: form-data; name="name"
Content-Type: form-data; charset=US-ASCII
Content-Transfer-Encoding: 8bit

test
--t9u984dDyYVtn6R0e8-OiZQyWRv9gk1
Content-Disposition: form-data; name="description"
Content-Type: form-data; charset=US-ASCII
Content-Transfer-Encoding: 8bit

testing
--t9u984dDyYVtn6R0e8-OiZQyWRv9gk1
Content-Disposition: form-data; name="configFile"; filename="my-project-1513669048551-73373e5a6b29.json"
Content-Type: application/json
Content-Transfer-Encoding: binary

<actual file content, not shown here>
--t9u984dDyYVtn6R0e8-OiZQyWRv9gk1--

我想从请求名称和描述部分中删除这部分

Content-Type: form-data; charset=US-ASCII
Content-Transfer-Encoding: 8bit

这会导致失败,状态码:415 需要这方面的帮助

【问题讨论】:

    标签: jmeter jmeter-5.0


    【解决方案1】:

    如果在您勾选 Use multipart/form-data 框时 JMeter 的 HTTP Request 采样器生成的标准 multipart HTTP Request 对您不起作用,请注意您可以使用以下方法手动构建 HTTP 请求:

    查看Testing REST API File Uploads in JMeter以获得更全面的解释和详细示例

    【讨论】:

    • 哦,我的查询似乎没有正确发布,现在编辑它。
    • 那么您做错了,因为您发送的请求与浏览器相同 - 它应该按预期工作
    猜你喜欢
    • 2018-04-08
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    • 2020-07-23
    • 1970-01-01
    • 2019-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多