У меня проблема с установкой файлов cookie на реальном сервере.Странная часть заключается в том, что он фактически устанавливает и отправляет с каждым запросом, но он вообще не появляется в файле cookie приложения и не имеет пути или даты истечения срока действия.На локальном все работает нормально, я использую Angular 7 для внешнего интерфейса, и у меня есть внутренний экспресс-узел.Файл cookie устанавливается правильно и отображается в хранилище файлов cookie на локальном хосте,
мое промежуточное ПО cors настроено так:
this.express.use(cors({origin: 'https://app.maindomain.ca', credentials: true}));
Вот мой метод входа, фиксированный для моего маршрута POST / входа в систему
public login(req, res) {
validateLoginForm(req.body)
.then(doc => {
createToken(doc)
.then(token => {
res.cookie('tok', token, {maxAge : 1000 * 60 * 43800, httpOnly: true});
res.send({status: 200});
})
.catch(err => {res.send(err)})
})
.catch(err => {res.send(err)})
};
На моем веб-интерфейсе:
import { Injectable } from '@angular/core';
import {HttpClient, HttpHeaders} from '@angular/common/http';
import {Observable} from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class LoginService {
baseURL = 'https://api.maindomain.ca';
headers = new HttpHeaders({'Content-Type': 'application/json'});
options = {headers: this.headers, withCredentials: true};
constructor(private http: HttpClient) {}
public loginFormPost = (datas): Observable<any> => {
return this.http.post(`${this.baseURL}/login`, datas, this.options);
}
}
Так что я довольно озадачен тем, почему он отлично работает в Local и даже в реальном времени сохраняет cookie (где?), Даже еслиЯ закрываю браузер и делаю новый запрос, он отправляет существующий файл cookie (который даже не отображается в хранилище файлов cookie).
Изображение: