Как загрузить файл в Hug REST API

Я работаю над базовым API Hug, и для одной из моих функций нужен файл.

Есть ли у Hug способ загрузить файл?

2 ответа

Этот пример - то, что вы ищете: https://github.com/timothycrosley/hug/blob/develop/examples/file_upload_example.py

@hug.post('/upload')
def upload_file(body):
    """accepts file uploads"""
    #  is a simple dictionary of {filename: b'content'}
    print('body: ', body)
    return {'filename': list(body.keys()).pop(), 'filesize': len(list(body.values()).pop())}

Я думаю, что это возможно. Глядя на файл input_format.py, вы сможете извлечь файл, закодированный в некоторый кодекс (url, utf-8 и т. Д.). Глядя на readme github, есть этот пример:

@hug.default_input_format("application/json")
def my_input_formatter(data):
    return ('Results', hug.input_format.json(data))

Если файл был в формате json, вы извлекаете закодированный файл из объекта json, конвертируете его в байты, а затем записываете байты в локальный файл.

Другие вопросы по тегам