Praca z projektem, w którym wykorzystuje się plik cookie do identyfikacji użytkownika.Przeglądarka nie wysyła plików cookie w kolejnym żądaniu.
Kiedy użytkownik dotrze, wywołuje usługę (który jest uruchomiony w localhost) oraz usługę wysyłania cookie z nagłówka odpowiedzi wygląda następująco:
curl 'http://127.0.0.1:8000/api/v1.0/tracking' -X OPTIONS -H 'Access-Control-Request-Method: POST' -H 'Origin: http://local.com:8080' -H 'Access-Control-Request-Headers: content-type,x-forwarded-for' --compressed
Nagłówek reakcja wygląda następująco:
HTTP/1.1 200 OK
Connection: keep-alive
Keep-Alive: 60
Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers, x-forwarded-for
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, PATCH, GET
Content-Length: 0
Content-Type: text/plain; charset=utf-8
Set-Cookie: id=random_id_123_123; expires=Wed, 06-Dec-2017 10:57:36 GMT; Domain=.local.com; Path=/
a następnie po upływie określonego działania użytkownika, aplikacja wysyła następujące żądanie API:
curl 'http://127.0.0.1:8000/api/v1.0/tracking?event=video_added&user_id=123123123' -H 'Origin: http://local.com:8080' -H 'Accept: */*' -H 'Referer: http://local.com:8080/' -H 'Connection: keep-alive' --compressed
nagłówku żądania dla powyższego wniosku wygląda jak poniżej:
GET api/v1.0/tracking?event=video_added&user_id=123123123 HTTP/1.1
Host: 127.0.0.1:8000
Connection: keep-alive
Accept: */*
Origin: http://local.com:8080
User-Agent: My user agent
Referer: http://local.com:8080/
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Spodziewałem cookie (random_id_123_123) być otrzymane z pierwszego wniosku jako nagłówku odpowiedzi byłby nagłówek wniosek o drugą prośbę.
Witryna działa na: http://local.com:8080 (która faktycznie działa na komputerze lokalnym i mojej konfiguracji vhost wskazując 127.0.0.1 local.com) i jest obsługiwana przez python SimpleHTTPServer
.
Usługa wewnętrzna, która ustawia ciasteczko działa również na porcie 8000 w localhost. Wygląda na to, że coś przeoczyłem podczas realizacji. Co to jest?
Edytuj: Oto code.
Byłoby naprawdę trudno nam powiedzieć * jeśli nie dodawać żadnego kodu * –
@MatiasCicero Dodałem link do kodu. –