【问题标题】:How to send axios put request with jwt token in reactjs如何在reactjs中使用jwt令牌发送axios put请求
【发布时间】:2019-01-29 02:46:12
【问题描述】:

我尝试将详细信息发送到服务器但收到 403 错误

下面是我的代码。

export const updateAppTypeData = (appData) => async dispatch => {
  const token = localStorage.getItem('token')
  const response = await axios({
    method : 'put',
    url: ('http://localhost:8000/api/posts/appType/'+appData.id+'/'),
    data: appData,
    headers: {'Content-Type': 'application/json', 'Authorization': 'Token '+token},
    json: true
  }).then(function (response) {
        console.log(response);
  });
  //dispatch({ type : FETCH_APP_TYPE , payload: response.data });
};

任何帮助都将是一大优势。谢谢。

【问题讨论】:

  • 您的请求选项是正确的 IMO。
  • 谢谢@Arup 但我仍然收到 403 错误。我们是否必须以其他方式放置 jwt 令牌。

标签: python django python-3.x reactjs django-rest-framework


【解决方案1】:

我认为您的标题中缺少“Bearer”关键字,这是允许的类型之一(其他类型如 basicdigest)。 根据RFC6750RFC6749

...
headers: {'Content-Type': 'application/json', 'Authorization': 'Bearer '+token}
...

【讨论】:

  • 感谢@Maielo,但在尝试后它也不起作用。
  • 如果是这样,可能是您的服务器端出现错误。您在某处检查身份验证,API 向您返回 403 禁止,因为它无法正确读取 jwt ot 某些东西。您能否发布您如何在服务器端处理身份验证/授权?
  • 请查看此链接,其中包含我的服务器端详细信息stackoverflow.com/questions/51970130/…
猜你喜欢
  • 2019-10-19
  • 2019-02-16
  • 2019-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-17
  • 2020-03-28
  • 2017-10-21
相关资源
最近更新 更多