CsrfProtection适用于邮递员,但不适用于React JS中的axios

时间:2019-06-20 16:26:49

标签: reactjs express csrf

我在node中创建了一个演示服务器并表示JS,并已将CSRF PROTECTION用于服务器。 每当我用邮递员创建登录电话时,它都可以正常工作。但是,如果我在React JS中使用axios进行API调用。它总是返回“无效的CSRF令牌”。

APIS。 获取CSRF令牌 http://34.229.208.243/user/getCsrfToken 登录 http://34.229.208.243/user/login/

在仅发送CSRFToken的情况下发送登录请求时,如果工作正常,它将返回message :User does not exist。.

我正在发送

{
_csrf :"mycsrfToekn"
}

在我的axios请求中。 请帮助

我在服务器中启用了CORS。并尝试了各种ans等。 axios.defaults.headers.post['X-XSRF-TOKEN'] = csrfToken.data; axios.defaults.headers.post['X-CSRFToken'] = csrfToken.data;

但不起作用

我也尝试过

const loginData = await fetch(`${req_url}/user/login/, {
            method: 'POST',
            credentials: 'same-origin',
            headers: new Headers({
              'Content-Type': 'application/json',
              'Accept': 'application/json',
              'CSRF-Token': formData._csrf
            }),
            body: JSON.stringify( formData )
          });
          if (loginData.ok) {
            try {
              return await loginData.json();
            } catch (err) {}
          }

0 个答案:

没有答案