Dokumentacja, a co ważniejsze, niektóre przykłady kodu byłyby bardzo przydatne. Wolałbym, żeby to nie było w chronionych skryptach, ale w kodzie, który trafia do nowoczesnych pakietów.Jak uzyskać i ustawić pliki cookie w Zope i Plone?
Odpowiedz
Użyj metody response.setCookie()
. Możesz dotrzeć do obiektu odpowiedzi za pośrednictwem obiektu żądania. Te ostatnie można osiągnąć poprzez przejęcia (self.REQUEST
) lub przez dostęp do poglądów przeszedł w obiekt żądania, zazwyczaj poprzez self.request
:
self.request.response.setCookie(name, value, **options)
gdzie options
skończyć jako dodatkowe parametry ciasteczka. W związku z tym przekształcenie pliku cookie w plik cookie poza sesją wymaga słowa kluczowego expires='date'
, ograniczenie pliku cookie do ścieżki to słowo kluczowe path='/somepath'
do metody setCookie()
. Obowiązują tu zwykłe reguły dotyczące plików cookie w przeglądarce.
wygaśnie cookie już ustawiony w przeglądarce, można też użyć expires='date in the past'
słowo kluczowe, lub można użyć metody response.expireCookie()
, który robi to za ciebie:
self.request.response.expireCookie(name, **options)
W tym przypadku można nadal obejmować opcje takie jak path
lub inne znaczniki plików cookie, ale metoda zastąpi opcje max_age
i expires
, aby upewnić się, że plik cookie został usunięty przez przeglądarkę.
Mimo że możesz korzystać z pomocy Zope'a SESSION
, naprawdę musisz przemyśleć kwestie związane ze skalowalnością. Na przykład musisz przemyśleć, jak dane sesji będą współdzielone w klastrze, jeśli korzystasz z ZEO lub RelStorage. Zasadniczo lepiej jest unikać korzystania z SESSION
, jeśli skalowalność będzie stanowić problem.
Aby ustawić pliki cookie, użyj RESPONSE.setCookie.
>>> self.REQUEST.RESPONSE.setCookie('cookiename', 'cookievalue', expires='Wed, 22 June 2009 12:00:00 GMT')
Plik cookie trafi do ŻĄDANIA w następnym żądaniu.
>>> self.REQUEST['cookiename']
'cookievalue'
Użytkownik "usuwa" plik cookie, używając wartości None
.
** Pamiętaj jednak, że większość czasu, w którym ludzie używają plików cookie, służy do przechowywania zmiennych, które mają związek z sesjami, i możesz użyć self.REQUEST.SESSION do tego, jest to łatwiejsze.
- 1. Jak ustawić i sprawdzić pliki cookie za pomocą JAX-RS?
- 2. WebView i pliki Cookie na Androidzie
- 3. Grać w ramy, jak działają sesje i pliki cookie?
- 4. Jak uzyskać pliki cookie innych firm?
- 5. Jak mogę uzyskać wszystkie pliki cookie CookieContainer?
- 6. Jak można uzyskać pliki cookie z HttpClientHandler.CookieContainer
- 7. System logowania (PHP) Pliki cookie i sesje
- 8. Utrwalanie sesji SSL i bezpieczne pliki cookie
- 9. Czy UIWebView i NSURLConnection udostępniają pliki cookie?
- 10. Jak utworzyć i pobrać pliki cookie w Grails 2.0?
- 11. Rails/rspec: jak ustawić pliki cookie w specyfikacji żądania?
- 12. Jak usunąć wszystkie pliki cookie w Angularjs?
- 13. Pliki cookie w ASP vnext
- 14. Flask: Jak usunąć pliki cookie?
- 15. Jak ustawić cookie w Jersey?
- 16. Jak ustawić datę wygaśnięcia na pliki cookie klienta?
- 17. Pliki cookie w domenie intranetowej
- 18. jsoup wysyłanie i cookie
- 19. Pakowanie danych Plone
- 20. Sesje i pliki cookie do autologin w GWT
- 21. Jak uzyskać i ustawić stan ag-grid?
- 22. Android: jak przechowywać pliki cookie?
- 23. Jak ustawić i uzyskać tag Uibuttons?
- 24. Jak uzyskać pliki cookie z innej domeny za pomocą php i javascript
- 25. Jak mogę ustawić i uzyskać ciasteczka (po stronie serwera) w Meteor?
- 26. Jak uzyskać HttpWebRequest.AllowAutoRedirect, aby ustawić pliki cookie podczas wykonywania GET/POST na poprawionej stronie?
- 27. Zastępowanie szablonu widoku innego produktu w Plone
- 28. Jak przekazywać pliki cookie w przekierowaniu CURL?
- 29. Pliki cookie w przeglądarce Firefox
- 30. Wygasające pliki cookie z AngularJS?
Dzięki za odpowiedź! Pracujemy z 3-4 instancjami na aplikację zope, więc * nie * martwienie się o to, którą instancję uderzamy, jest bardzo miłe. – pydanny