Python 上传文件

代码是伪代码

import requests
import string
import random
from requests_toolbelt.multipart.encoder import MultipartEncoder


def generate_random_string(length):
    letters = string.ascii_lowercase + string.digits
    return ''.join(random.choice(letters) for _ in range(length))


def upload_file(file_path, random_string):
    url = f'{HOST}:{PORT}/upload?upload_id={random_string}'
    fields = {
        'files': (file_path, open(file_path, 'rb'), 'application/octet-stream'),
    }
    boundary = '----WebKitFormBoundary' + generate_random_string(16)
    m = MultipartEncoder(fields=fields, boundary=boundary)
    print(m.content_type)
    headers['Content-Type'] = m.content_type

    response = requests.post(url, data=m, headers=headers)
    return response.json()