В моем заголовке есть токен, но он говорит, что токена нет, как если бы токена не было. но когда он попробует это на почтальоне, он работает нормально. в чем здесь проблема - PullRequest
0 голосов
/ 04 марта 2020

это мой код действия:

    export const accept = (clinicianId, duration) => (dispatch, getState) => {
  axios
    .post(
      "http://localhost:5000/api/patient/authAccess",
      clinicianId,
      duration,
      tokenConfig(getState)
    )
    .then(res =>
      dispatch({
        type: ACCESS,
        payload: res.data
      })
    )
    .catch(err => {
      dispatch(
        returnErrors(err.response.data, err.response.status, "ACCESS_FAIL")
      );
    });
};

это то, как я устанавливаю токен и также добавляю его в мой заголовок:

export const tokenConfig = getState => {
const token = getState().auth.token;


const config = {
  headers: {
    "Content-type": "application/json"
  }
};


if (token) {
  config.headers["x-auth-token"] = token;
}

return config;
};

, и это мой API, где токен go выполнит функцию авторизации и авторизует пользователя:

  const { clinicianId, duration } = req.body;
  jwt.sign(
    { id: clinicianId },
    config.get("jwtSecretAccess"),
    { expiresIn: duration },
    (err, token) => {
      if (err) throw err;
      res.json({
        token
      });
    }
  );

когда я проверил значение токена, есть один, я думаю, API не может его прочитать? Я не знаю, что делать сейчас.

1 Ответ

0 голосов
/ 05 марта 2020

Вы можете использовать Ax ios перехватчик, так как вы можете добавить заголовок для каждого http-запроса

https://dev.to/teroauralinna/global-http-request-and-response-handling-with-the-axios-interceptor-30ae

...