Files
aitsc/.venv/Lib/site-packages/werkzeug/datastructures/__pycache__/auth.cpython-312.pyc

106 lines
14 KiB
Plaintext
Raw Normal View History

2025-02-23 09:07:52 +08:00
<EFBFBD>
2025-08-17 18:52:05 +08:00
-<2D><>h<EFBFBD>(<00><01><><00>ddlmZddlZddlZddlmZddlZddl m
2025-02-23 09:07:52 +08:00
Z
ddl m Z ddl m Z ddl mZejrddlZGd <09>d
<EFBFBD>ZGd <0B>d <0C>Zy) <0A>)<01> annotationsN<73>)<01> dump_header)<01>parse_dict_header)<01>quote_header_value<75>)<01> CallbackDictc<01><><00>eZdZdZ d dd<03>Zdd<04>Zdd<05>Zddd<06>Zdd<07>Zdd<08>Z e
dd <09><04>Z dd
<EFBFBD>Z dd <0B>Z dd <0C>Zy)<16> Authorizationa<6E>Represents the parts of an ``Authorization`` request header.
:attr:`.Request.authorization` returns an instance if the header is set.
An instance can be used with the test :class:`.Client` request methods' ``auth``
parameter to send the header in test requests.
Depending on the auth scheme, either :attr:`parameters` or :attr:`token` will be
set. The ``Basic`` scheme's token is decoded into the ``username`` and ``password``
parameters.
For convenience, ``auth["key"]`` and ``auth.key`` both access the key in the
:attr:`parameters` dict, along with ``auth.get("key")`` and ``"key" in auth``.
.. versionchanged:: 2.3
The ``token`` parameter and attribute was added to support auth schemes that use
a token instead of parameters, such as ``Bearer``.
.. versionchanged:: 2.3
The object is no longer a ``dict``.
.. versionchanged:: 0.5
The object is an immutable dict.
Nc<01>:<00>||_ |<02>i}||_ ||_y<00>N)<03>type<70>
2025-08-16 19:28:45 +08:00
parameters<EFBFBD>token)<04>self<6C> auth_type<70>datars <20>@D:\aitsc\.venv\Lib\site-packages\werkzeug\datastructures\auth.py<70>__init__zAuthorization.__init__+s2<00><00> <1E><04> <09>R<> <0F><<3C><15>D<EFBFBD><1E><04><0F> <0C><1B><04>
2025-02-23 09:07:52 +08:00
<EFBFBD> <0C>c<01>8<00>|jj|<01>Sr <00>r<00>get<65>r<00>names r<00> __getattr__zAuthorization.__getattr__C<00><00><00><13><EFBFBD><EFBFBD>"<22>"<22>4<EFBFBD>(<28>(rc<01>8<00>|jj|<01>Sr rrs r<00> __getitem__zAuthorization.__getitem__Frrc<01>:<00>|jj||<02>Sr r<00>r<00>key<65>defaults rrzAuthorization.getI<00><00><00><13><EFBFBD><EFBFBD>"<22>"<22>3<EFBFBD><07>0<>0rc<01><00>||jvSr <00>r<00>rr"s r<00> __contains__zAuthorization.__contains__L<00><00><00><12>d<EFBFBD>o<EFBFBD>o<EFBFBD>%<25>%rc<01><><00>t|t<00>stS|j|jk(xr4|j|jk(xr|j
|j
k(Sr )<06>
isinstancer <00>NotImplementedrrr<00>r<00>others r<00>__eq__zAuthorization.__eq__OsU<00><00><19>%<25><1D>/<2F>!<21> !<21> <12>J<EFBFBD>J<EFBFBD>$<24>)<29>)<29> #<23> 4<><15> <0B> <0B>t<EFBFBD>z<EFBFBD>z<EFBFBD>)<29> 4<><15> <20> <20>D<EFBFBD>O<EFBFBD>O<EFBFBD>3<>
rc<01><><00>|sy|jd<02>\}}}|j<00>}|j<00>}|dk(rC tj|<04>j <00>jd<04>\}}}||||d<05><02>Sd|jd<06>vr||t|<04>d<01>S||d|<04>S#t jtf$rYywxYw)z<>Parse an ``Authorization`` header value and return an instance, or ``None``
if the value is empty.
:param value: The header value to parse.
.. versionadded:: 2.3
N<> <20>basic<69>:)<02>username<6D>password<72>=) <0B> partition<6F>lower<65>strip<69>base64<36> b64decode<64>decode<64>binascii<69>Error<6F> UnicodeError<6F>rstripr)<07>cls<6C>value<75>scheme<6D>_<>restr4r5s r<00> from_headerzAuthorization.from_headerYs<><00><00><15><17><1F>/<2F>/<2F>#<23>.<2E><0F><06><01>4<EFBFBD><17><1C><1C><1E><06><13>z<EFBFBD>z<EFBFBD>|<7C><04> <11>W<EFBFBD> <1C> <1C>(.<2E>(8<>(8<><14>(><3E>(E<>(E<>(G<>(Q<>(Q<>RU<52>(V<>%<25><08>!<21>X<EFBFBD><17>v<EFBFBD>H<EFBFBD>(<28>K<>L<> L<> <0E>$<24>+<2B>+<2B>c<EFBFBD>"<22> "<22><16>v<EFBFBD>0<><14>6<><04>=<3D> =<3D><13>6<EFBFBD>4<EFBFBD><14>&<26>&<26><><1D>N<EFBFBD>N<EFBFBD>L<EFBFBD>1<> <1C><1B> <1C>s<00>6B1<00>1C <03> C c<01><><00>|jdk(rPtj|j<00>d|j<00><00>j <00><00>j d<03>}d|<01><00>S|j<00>)|jj<00><00>d|j<00><00>S|jj<00><00>dt|j<00><00><00>S)ziProduce an ``Authorization`` header value representing this data.
.. versionadded:: 2.0
r2r3<00>asciizBasic r1) rr:<00> b64encoder4r5<00>encoder<r<00>titlerr<00>rrBs r<00> to_headerzAuthorization.to_headerxs<><00><00>
<10>9<EFBFBD>9<EFBFBD><07> <1F><1A>$<24>$<24><17>=<3D>=<3D>/<2F><11>4<EFBFBD>=<3D>=<3D>/<2F>2<>9<>9<>;<3B><0E><14>f<EFBFBD>W<EFBFBD>o<EFBFBD> <12><1C>E<EFBFBD>7<EFBFBD>#<23> #<23> <0F>:<3A>:<3A> !<21><1A>i<EFBFBD>i<EFBFBD>o<EFBFBD>o<EFBFBD>'<27>(<28><01>$<24>*<2A>*<2A><1C>6<> 6<><16>)<29>)<29>/<2F>/<2F>#<23>$<24>A<EFBFBD>k<EFBFBD>$<24>/<2F>/<2F>&B<>%C<>D<>Drc<01>"<00>|j<00>Sr <00>rM<00>rs r<00>__str__zAuthorization.__str__<5F><00><00><00><13>~<7E>~<7E><1F>rc<01>V<00>dt|<00>j<00>d|j<00><00>d<03>S<00>N<><r1<00>><3E>r<00>__name__rMrPs r<00>__repr__zAuthorization.__repr__<5F><00>*<00><00><12>4<EFBFBD><04>:<3A>&<26>&<26>'<27>q<EFBFBD><14><1E><1E>)9<>(:<3A>!<21><<3C><r<00>NN)r<00>strr<00>dict[str, str | None] | Noner<00>
str | None<6E>return<72>None<6E>rr\r_r^r <00>r"r\r#r^r_r^<00>r"r\r_<00>bool<6F>r.<00>objectr_rd<00>rBr^r_zte.Self | None<6E>r_r\)rX<00>
__module__<EFBFBD> __qualname__<5F>__doc__rrrrr(r/<00> classmethodrFrMrQrY<00>rrr r sw<00><00><08>8.2<EFBFBD> <20>  <0C><16> <0C>+<2B> <0C><1A>  <0C>
<0E>  <0C>0)<29>)<29>1<>&<26>
<EFBFBD><11>'<27><11>'<27><E<01>  <20>=rr c<01>X<00><00>eZdZdZ d dd<02>Zdd<03>Zedd<04><04>Zejdd<05><04>Zedd<06><04>Z e jdd<07><04>Z edd<08><04>Z
e
jdd <09><04>Z
d d
<EFBFBD>Z d!d <0B>Z d"d <0C>Z d#d <0A>Zd$<24>fd<0E> Zd%d<0F>Zd&d<10>Zd'd<11>Zd(d)d<12>Zed*d<13><04>Zdd<14>Zdd<15>Zdd<16>Z<18>xZS)+<2B>WWWAuthenticatea<65>Represents the parts of a ``WWW-Authenticate`` response header.
Set :attr:`.Response.www_authenticate` to an instance of list of instances to set
values for this header in the response. Modifying this instance will modify the
header value.
Depending on the auth scheme, either :attr:`parameters` or :attr:`token` should be
set. The ``Basic`` scheme will encode ``username`` and ``password`` parameters to a
token.
For convenience, ``auth["key"]`` and ``auth.key`` both act on the :attr:`parameters`
dict, and can be used to get, set, or delete parameters. ``auth.get("key")`` and
``"key" in auth`` are also provided.
.. versionchanged:: 2.3
The ``token`` parameter and attribute was added to support auth schemes that use
a token instead of parameters, such as ``Bearer``.
.. versionchanged:: 2.3
The object is no longer a ``dict``.
.. versionchanged:: 2.3
The ``on_update`` parameter was removed.
c<01>t<00><00>|j<00><00>_t|<02>fd<01><08><00>_|<03>_d<00>_y)Nc<01>$<00><01><00>j<00>Sr <00><01>_trigger_on_update<74>rDrs <20>r<00><lambda>z*WWWAuthenticate.__init__.<locals>.<lambda><3E>s<00><><00>d<EFBFBD>5<>5<>7r)r8<00>_typer <00> _parameters<72>_token<65>
_on_update)rr<00>valuesrs` rrzWWWAuthenticate.__init__<5F>s6<00><><00> <1F>_<EFBFBD>_<EFBFBD>&<26><04>
<EFBFBD>2><3E> <12>7<>3
<EFBFBD><04><18><1C><04> <0B>IM<49><04>rc<01>@<00>|j<00>|j|<00>yyr )ryrPs rrsz"WWWAuthenticate._trigger_on_update<74>s<00><00> <0F>?<3F>?<3F> &<26> <10>O<EFBFBD>O<EFBFBD>D<EFBFBD> !<21> 'rc<01><00>|jS)zDThe authorization scheme, like ``basic``, ``digest``, or ``bearer``.)rvrPs rrzWWWAuthenticate.type<70>s<00><00><14>z<EFBFBD>z<EFBFBD>rc<01>2<00>||_|j<00>yr )rvrsrLs rrzWWWAuthenticate.type<70>s<00><00><1A><04>
<EFBFBD> <0C><1F><1F>!rc<01><00>|jS<00>zA dict of parameters for the header. Only one of this or :attr:`token` should
have a value for a given scheme.
)rwrPs rrzWWWAuthenticate.parameters<72>s<00><00>
<14><1F><1F>rc<01>N<00><00>t|<01>fd<01><08><00>_<00>j<00>y)Nc<01>$<00><01><00>j<00>Sr rrrts <20>rruz,WWWAuthenticate.parameters.<locals>.<lambda><3E>s<00><><00><14>9P<39>9P<39>9Rr)r rwrsrLs` rrzWWWAuthenticate.parameters<72>s<00><><00>'<27><05>/R<>S<><04><18> <0C><1F><1F>!rc<01><00>|jSr)rxrPs rrzWWWAuthenticate.token<65>s<00><00>
<14>{<7B>{<7B>rc<01>2<00>||_|j<00>y)z<>A token for the header. Only one of this or :attr:`parameters` should have a
value for a given scheme.
.. versionadded:: 2.3
N)rxrsrLs rrzWWWAuthenticate.token<65>s<00><00><1C><04> <0B> <0C><1F><1F>!rc<01>8<00>|jj|<01>Sr rr's rrzWWWAuthenticate.__getitem__<5F>s<00><00><13><EFBFBD><EFBFBD>"<22>"<22>3<EFBFBD>'<27>'rc<01>~<00>|<02>||jvr|j|=n||j|<|j<00>yr <00>rrs)rr"rBs r<00> __setitem__zWWWAuthenticate.__setitem__<5F>s9<00><00> <10>=<3D><12>d<EFBFBD>o<EFBFBD>o<EFBFBD>%<25><18>O<EFBFBD>O<EFBFBD>C<EFBFBD>(<28>#(<28>D<EFBFBD>O<EFBFBD>O<EFBFBD>C<EFBFBD> <20> <0C><1F><1F>!rc<01>\<00>||jvr|j|=|j<00>yyr r<>r's r<00> __delitem__zWWWAuthenticate.__delitem__<5F>s+<00><00> <0E>$<24>/<2F>/<2F> !<21><14><0F><0F><03>$<24> <10> #<23> #<23> %<25> "rc<01> <00>||Sr rmrs rrzWWWAuthenticate.__getattr__<5F>s <00><00><13>D<EFBFBD>z<EFBFBD>rc<01>:<00><01>|dvrt<00>|<00>||<02>y|||<y)N>rvrxryrw)<02>super<65> __setattr__)rrrB<00> __class__s <20>rr<>zWWWAuthenticate.__setattr__<5F>s$<00><><00> <0F>C<> C<> <11>G<EFBFBD> <1F><04>e<EFBFBD> ,<2C><1E>D<EFBFBD><14>Jrc<01>
<00>||=yr rmrs r<00> __delattr__zWWWAuthenticate.__delattr__<5F>s <00><00> <10><14>Jrc<01><00>||jvSr r&r's rr(zWWWAuthenticate.__contains__<5F>r)rc<01><><00>t|t<00>stS|j|jk(xr4|j|jk(xr|j
|j
k(Sr )r+ror,rrrr-s rr/zWWWAuthenticate.__eq__sU<00><00><19>%<25><1F>1<>!<21> !<21> <12>J<EFBFBD>J<EFBFBD>$<24>)<29>)<29> #<23> 4<><15> <0B> <0B>t<EFBFBD>z<EFBFBD>z<EFBFBD>)<29> 4<><15> <20> <20>D<EFBFBD>O<EFBFBD>O<EFBFBD>3<>
rc<01>:<00>|jj||<02>Sr rr!s rrzWWWAuthenticate.get r$rc<01><><00>|sy|jd<02>\}}}|j<00>}|j<00>}d|jd<03>vr||t |<04>d<01>S||d|<04>S)z<>Parse a ``WWW-Authenticate`` header value and return an instance, or ``None``
if the value is empty.
:param value: The header value to parse.
.. versionadded:: 2.3
Nr1r6)r7r8r9r@r)rArBrCrDrEs rrFzWWWAuthenticate.from_headersk<00><00><15><17><1F>/<2F>/<2F>#<23>.<2E><0F><06><01>4<EFBFBD><17><1C><1C><1E><06><13>z<EFBFBD>z<EFBFBD>|<7C><04> <0E>$<24>+<2B>+<2B>c<EFBFBD>"<22> "<22><16>v<EFBFBD>0<><14>6<><04>=<3D> =<3D><13>6<EFBFBD>4<EFBFBD><14>&<26>&rc<01><><00>|j<00>)|jj<00><00>d|j<00><00>S|jdk(rkg}|jj <00>D]8\}}|dvrt |d<04><05>}n t |<03>}|j |<02>d|<03><00><03><00>:ddj|<01><00><00>S|jj<00><00>dt|j<00><00><00>S) zCProduce a ``WWW-Authenticate`` header value representing this data.r1<00>digest><00>qop<6F>nonce<63>realm<6C>domain<69>opaqueF)<01> allow_tokenr6zDigest z, ) rrrKr<00>itemsr<00>append<6E>joinr)rr<>r"rBs rrMzWWWAuthenticate.to_header%s<><00><00> <0F>:<3A>:<3A> !<21><1A>i<EFBFBD>i<EFBFBD>o<EFBFBD>o<EFBFBD>'<27>(<28><01>$<24>*<2A>*<2A><1C>6<> 6<> <0F>9<EFBFBD>9<EFBFBD><08> <20><16>E<EFBFBD>"<22>o<EFBFBD>o<EFBFBD>3<>3<>5<>
<EFBFBD><03>U<EFBFBD><16>G<>G<>.<2E>u<EFBFBD>%<25>H<>E<EFBFBD>.<2E>u<EFBFBD>5<>E<EFBFBD><15> <0C> <0C><03>u<EFBFBD>A<EFBFBD>e<EFBFBD>W<EFBFBD>-<2D>.<2E> 6<><1D>T<EFBFBD>Y<EFBFBD>Y<EFBFBD>u<EFBFBD>-<2D>.<2E>/<2F> /<2F><16>)<29>)<29>/<2F>/<2F>#<23>$<24>A<EFBFBD>k<EFBFBD>$<24>/<2F>/<2F>&B<>%C<>D<>Drc<01>"<00>|j<00>Sr rOrPs rrQzWWWAuthenticate.__str__9rRrc<01>V<00>dt|<00>j<00>d|j<00><00>d<03>SrTrWrPs rrYzWWWAuthenticate.__repr__<rZrr[)rr\rzr]rr^)r_r`rh)rBr\r_r`)r_zdict[str, str | None])rBzdict[str, str]r_r`)r_r^)rBr^r_r`)r"r\r_r^)r"r\rBr^r_r`)r"r\r_r`ra)rr\rBr^r_r`)rr\r_r`rcrer rbrg)rXrirjrkrrs<00>propertyr<00>setterrrrr<>r<>rr<>r<>r(r/rrlrFrMrQrY<00> __classcell__)r<>s@rroro<00>s<00><><00><08>804<30> <20> N<01><16> N<01>-<2D> N<01><1A> N<01>"<22><0E><1A><0E><1A>
<EFBFBD>[<5B>[<5B>"<22><11>"<22><0E> <20><0E> <20> <10><16><16>"<22><17>"<22><0E><1B><0E><1B>  <0B>\<5C>\<5C>"<22><12>"<22>(<28>"<22>&<26>
<1A><1F> <17>&<26>
<EFBFBD>1<><11>'<27><11>'<27>,E<01>( <20>=rro)<14>
__future__rr:r=<00>collections.abc<62>abc<62>cabc<62>typing<6E>t<>httprrr<00>
structuresr <00> TYPE_CHECKING<4E>typing_extensions<6E>ter rormrr<00><module>r<>sC<00><01>"<22> <0A><0F><1E><12><1E>$<24>%<25>$<24><04>?<3F>?<3F>"<22>{=<3D>{=<3D>|n=<3D>n=r