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

Capital.com API的Curl转React Axios等价代码及400错误修复

Capital.com API登录请求:Curl转Axios(React)修正方案

原Curl请求解析

这段Curl是向Capital.com会话接口发起的POST登录请求,核心结构拆解:

  • 请求方法:POST,目标地址 https://api-capital.backend-capital.com/api/v1/session
  • 请求头:包含API密钥X-CAP-API-KEY和内容类型Content-Type: application/json
  • 请求体:JSON格式的登录参数,包含encryptedPassword、identifier、password三个字段

你的代码问题

你错误地把请求头字段和请求体参数混在了Axios POST的第二个参数里(Axios第二个参数仅用于传递请求体),导致接口无法正确解析请求,返回400错误。

修正后的Axios代码

const loginHandler = () => {
  // 单独配置请求头
  const requestHeaders = {
    'X-CAP-API-KEY': 'tL0xi4wvz5X8uHaD',
    'Content-Type': 'application/json'
  };

  // 整理请求体参数
  const requestBody = {
    encryptedPassword: false,
    identifier: 'hadwe',
    password: '88asc'
  };

  axios.post(
    'https://api-capital.backend-capital.com/api/v1/session',
    requestBody,
    { headers: requestHeaders } // 请求头放在配置对象中传入
  )
  .then(res => {
    console.log(res.data);
  })
  .catch(err => {
    console.error('请求失败:', err.response?.data || err.message);
  });
};

关键注意点

  • Axios POST的参数顺序为:请求地址 → 请求体数据 → 配置对象(含headers等)
  • 若请求仍报错,可尝试将encryptedPassword改为字符串"false"(与原Curl保持一致)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 08:05:34