Не обнаруживает Кука ie на странице Vue - PullRequest
1 голос
/ 06 января 2020

Всякий раз, когда пользователь отправляет запрос API, я проверяю, является ли сеанс действительным

userCookie, err := r.Cookie("session-id")
    if err != nil {
        fmt.Println(err)
        if strings.HasPrefix(r.URL.Path, "/login") {
            Login(w, r, db) //login and create session
        }
   } else {
     //Authenticate Session Then if Valid proceed to my APIs
   }

Так что, когда я использую API непосредственно в строке поиска браузера, он работает, потому что он обнаруживает приготовление сеанса ie, но когда я использую его на Vue / ax ios, он не обнаруживает повара ie и выдает мне такую ​​ошибку:

http: named cookie not present
exit status 1

Когда я создаю сеанс, я устанавливаю повара ie Path: "/", поэтому сессия Cooking ie также генерируется на моей странице Vue, хотя мой сервер и интерфейс имеют разные порты. Итак, как я могу заставить сервер обнаруживать мой сессионный повар ie на моей странице Vue?

1 Ответ

0 голосов
/ 06 января 2020

Вам необходимо установить withCredentials для отправки файлов cookie по запросам CORS (и поскольку у вас другой порт, он обрабатывается так, как если бы это был другой сервер).

axios.interceptors.request.use(
  function(config) {
    // Do something before request is sent
    config.withCredentials = true;
    return config;
  },
  function(error) {
    // Do something with request error
    return Promise.reject(error);
  }
);

или

axiox.get('/', { withCredentials: true })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...