Returns the given signed cookie if it validates, or None. The decoded cookie value is returned as a byte string (unlike `get_cookie`). Similar to `get_cookie`, this method only returns cookies that were present in the request. It does not see outgoing cookies set by
(
self,
name: str,
value: Optional[str] = None,
max_age_days: float = 31,
min_version: Optional[int] = None,
)
| 750 | ) |
| 751 | |
| 752 | def get_secure_cookie( |
| 753 | self, |
| 754 | name: str, |
| 755 | value: Optional[str] = None, |
| 756 | max_age_days: float = 31, |
| 757 | min_version: Optional[int] = None, |
| 758 | ) -> Optional[bytes]: |
| 759 | """Returns the given signed cookie if it validates, or None. |
| 760 | |
| 761 | The decoded cookie value is returned as a byte string (unlike |
| 762 | `get_cookie`). |
| 763 | |
| 764 | Similar to `get_cookie`, this method only returns cookies that |
| 765 | were present in the request. It does not see outgoing cookies set by |
| 766 | `set_secure_cookie` in this handler. |
| 767 | |
| 768 | .. versionchanged:: 3.2.1 |
| 769 | |
| 770 | Added the ``min_version`` argument. Introduced cookie version 2; |
| 771 | both versions 1 and 2 are accepted by default. |
| 772 | """ |
| 773 | self.require_setting("cookie_secret", "secure cookies") |
| 774 | if value is None: |
| 775 | value = self.get_cookie(name) |
| 776 | return decode_signed_value( |
| 777 | self.application.settings["cookie_secret"], |
| 778 | name, |
| 779 | value, |
| 780 | max_age_days=max_age_days, |
| 781 | min_version=min_version, |
| 782 | ) |
| 783 | |
| 784 | def get_secure_cookie_key_version( |
| 785 | self, name: str, value: Optional[str] = None |