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

Axios发送PUT请求时身份验证数据应该放在哪个位置?

问题核心原因排查

  • 路径参数与请求体参数不匹配:你当前请求URL路径中携带的邮箱是salesman@random.com(URL编码后为salesman%40random.com),但请求体data中填写的userMailId是correctemail@email.com,二者不一致,接口会判定参数非法返回401。根据接口设计规则,路径中的邮箱参数需要和实际用于登录的邮箱完全一致。
  • 缺少显式请求头声明:部分严格的接口要求必须显式携带Content-Type: application/json请求头,虽然Axios默认会自动添加该头,但建议手动声明避免异常。
  • meta字段值不符合要求:你当前代码中meta字段填的是占位符"string",实际接口可能要求该字段传特定值,你可以对照Codepen示例中实际发送的请求参数,替换为正确的meta值。

修正后的代码示例

const apiCall = async () => {
  try {
    // 把此处的邮箱替换为你实际的登录邮箱,和路径参数保持一致
    const loginEmail = "correctemail@email.com";
    const res = await axios({
      method: "put",
      url: `https://api-core-dev.caronsale.de/api/v1/authentication/${encodeURIComponent(loginEmail)}`,
      headers: {
        "Content-Type": "application/json"
      },
      data: {
        userMailId: loginEmail,
        authenticationRequest: {
          password: "你的正确登录密码",
          meta: "替换为Codepen示例中实际使用的meta值"
        }
      }
    });
    console.log("请求成功,AuthKey为:", res.data);
  } catch (err) {
    console.error("请求报错:", err.response?.data || err.message);
  }
};

额外排查建议

如果修改后仍然报错,可以打印请求的完整响应体err.response.data,查看接口返回的具体错误提示,进一步定位问题。

内容的提问来源于stack exchange,提问作者relativenoob

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:00:01