Как загрузить файл в 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, конвертируете его в байты, а затем записываете байты в локальный файл.