【问题标题】:post request in Axios with 400 or 401 - bearer token使用 400 或 401 在 Axios 中发布请求 - 不记名令牌
【发布时间】:2020-03-19 19:27:54
【问题描述】:

我正在尝试使用 axios 发布数据。

handleAddClickAxios = (token, title, text, category, creationDate) => {
  const api = "http://localhost:3000/tasks/";
  console.log("login clicked");
  let data = JSON.stringify({
    title: title,
    text: text,
    category: category,
    creationDate: creationDate,
    done: false
  });
  console.log(data);

  axios.post(api, data, {
    headers: {
      Authorization: `Bearer ${token}`,
      "Content-Type": "application/json"
    }
  });
};

现在我有 400 错误,在某些选项中我得到未经授权的错误。我尝试了很多次,但都失败了。

控制台:

Apptask - eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI1ZGNmZjFhMjQzZWUwNTJmNmNkMjAzYzgiLCJpYXQiOjE1NzQ1ODQzMDl9.P9cKtljoFXbCo6X540tQ27d_jeouOwwRJ6HKhpsy-PY 阿爸

App.js:100 次登录点击

App.js:108 {"title":"asdad","text":"aaaaaaaaaa","category":"","creationDate":"2019-10-0, 9:31","完成":false} :3000/tasks/:1 POST http://localhost:3000/tasks/ 400(错误请求)

在 devtools 中请求详细信息:

【问题讨论】:

  • 尝试不使用 JSON.stringify 发送数据。
  • 我试过了,我也遇到了 400 错误。
  • 还要确保您发送的是有效的creationDate,“2019-10-0, 9:31”不是有效日期。
  • 我将 creationDate 更改为 null,现在我得到了 201 :)。所以感谢提示。在我的 Express 路线中,我输入了 CreationDate - Boolean....
  • 如果我用这些信息发布答案,你会接受吗?

标签: json reactjs post axios bearer-token


【解决方案1】:

你需要像这样发送没有 JSON.stringify 的数据:

let data = {
  title,
  text,
  category,
  creationDate,
  done: false
};

另外你的 creationData 无效,它必须是这种格式:

“2019-11-24T09:06:29.271Z”

【讨论】:

    猜你喜欢
    • 2017-04-20
    • 2023-03-16
    • 2020-11-19
    • 1970-01-01
    • 2019-02-20
    • 2017-03-20
    • 2021-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多