관리-도구
편집 파일: fields.cpython-38.pyc
U )�e+ � @ s� d dl mZ d dlZd dlZd dlZejeef Z eje ej ee f ej ee ef f Zddddd�dd�Zdd dd �dd�Z dd dd �d d�Zdd dd �dd�Zdd dd �dd�ZG dd� d�ZdS )� )�annotationsN�application/octet-stream� str | None�str)�filename�default�returnc C s | rt �| �d p|S |S )z� Guess the "Content-Type" of a file. :param filename: The filename to guess the "Content-Type" of using :mod:`mimetypes`. :param default: If no "Content-Type" can be guessed, default to `default`. r )� mimetypes� guess_type)r r � r �</opt/hc_python/lib/python3.8/site-packages/urllib3/fields.py�guess_content_type s r �_TYPE_FIELD_VALUE��name�valuer c s� ddl }|jdtdd� t� t�r,� �d�� t� fdd�d D ��s~| � d � � d�}z|�d� W n tt fk rx Y nX |S t j�� d�� | � d � � �� � S )a� Helper function to format and quote a single header parameter using the strategy defined in RFC 2231. Particularly useful for header parameters which might contain non-ASCII values, like file names. This follows `RFC 2388 Section 4.4 <https://tools.ietf.org/html/rfc2388#section-4.4>`_. :param name: The name of the parameter, a string expected to be ASCII only. :param value: The value of the parameter, provided as ``bytes`` or `str``. :returns: An RFC-2231-formatted unicode string. .. deprecated:: 2.0.0 Will be removed in urllib3 v2.1.0. This is not valid for ``multipart/form-data`` header parameters. r Nz�'format_header_param_rfc2231' is deprecated and will be removed in urllib3 v2.1.0. This is not valid for multipart/form-data header parameters.� �� stacklevel�utf-8c 3 s | ]}|� kV qd S )Nr )�.0�ch�r r r � <genexpr>@ s z.format_header_param_rfc2231.<locals>.<genexpr>z"\ �="�"�asciiz*=) �warnings�warn�DeprecationWarning� isinstance�bytes�decode�any�encode�UnicodeEncodeError�UnicodeDecodeError�email�utils�encode_rfc2231)r r r �resultr r r �format_header_param_rfc2231 s$ � r+ c C s6 t |t�r|�d�}|�dddd��}| � d|� d�S )a� Format and quote a single multipart header parameter. This follows the `WHATWG HTML Standard`_ as of 2021/06/10, matching the behavior of current browser and curl versions. Values are assumed to be UTF-8. The ``\n``, ``\r``, and ``"`` characters are percent encoded. .. _WHATWG HTML Standard: https://html.spec.whatwg.org/multipage/ form-control-infrastructure.html#multipart-form-data :param name: The name of the parameter, an ASCII-only ``str``. :param value: The value of the parameter, a ``str`` or UTF-8 encoded ``bytes``. :returns: A string ``name="value"`` with the escaped value. .. versionchanged:: 2.0.0 Matches the WHATWG HTML Standard as of 2021/06/10. Control characters are no longer percent encoded. .. versionchanged:: 2.0.0 Renamed from ``format_header_param_html5`` and ``format_header_param``. The old names will be removed in urllib3 v2.1.0. r z%0Az%0Dz%22)� � �"