You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Locust编写正确POST请求?遇400错误求助

Locust POST请求400错误解决方法

你的问题出在两个核心点:

  • 后端期望接收**表单格式(application/x-www-form-urlencoded)**的请求体,但你用了json=参数,这会让请求以JSON格式发送,Content-Type也会被自动设为application/json,和后端要求不匹配,直接导致400错误。
  • 代码里把_csrf拼写成了_crf,不管是请求头还是请求体里的参数都存在拼写错误。

正确的写法应该改用data=参数传递表单数据,同时修正拼写错误:

self.client.post(
    "/user/auth/login",
    headers={"_csrf": tok},
    data={
        "_csrf": tok,
        "Login[username]": "username",
        "Login[password]": "password",
        "Login[rememberMe]": "0"
    }
)

如果后端明确要求Login[rememberMe]是数字类型,也可以把值改成0(去掉引号),不过表单提交时字符串"0"通常也能被后端正确解析。

另外,建议用浏览器开发者工具(F12)抓取正常登录的请求,对比请求头、请求体的格式和参数,确保Locust发送的请求和真实请求完全一致,这能帮你快速排查这类格式不匹配问题。

内容的提问来源于stack exchange,提问作者محمد حسین رحیمی

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 17:09:53