#python #python-3.x #flask
#python #python-3.x #flask
Вопрос:
мне было немного любопытно, как я могу отправлять данные и файлы json через postman и получать данные json и тот же файл в моем приложении flask.
Есть ли удобный способ отправки файлов или мне сохранить файл другим маршрутом, сгенерировать URL-адрес и передать его в запросе json. Или я должен напрямую отправить файл и сохранить его в файловой системе моего сервера? если я это сделаю, могу ли я получить файл с сервера?
я был бы признателен за любую помощь.
Код :
import os
from werkzeu&.utils import secure_filename
class Test(Resource):
def post(self):
# keys = request.json.keys()
dat = request.form['request']
file_path = request.files['file_path']
file_path.save(os.path.join(app.confi&['UPLOAD_FOLDER'], secure_filename(file_path.filename)))
# create the folders when settin& up your app
os.makedirs(os.path.join(app.instance_path, 'htmlfi'), exist_ok=True)
# when savin& the file
file_path.save(os.path.join(app.instance_path, 'htmlfi', secure_filename(file_path.filename)))
print(dat)
# company_id =flask_praetorian.current_user().company_id
# data = dict(request.json)
# print(data)
return "done"
api.add_resource(Test,'/Test_data')
Я могу получить данные, но это не json, но ими можно управлять. но является ли это эффективным способом прямой отправки файла и сохранения его в файловой системе или лучше использовать облачное хранилище Goo&le, поскольку я использую &cp? я думал о загрузке сервера.
Также сложно проверять наличие действительных ключей, например, я должен
if "keys" not in request.json.keys():
что упрощает мою работу, но в подходе с данными формы я должен проверять, как request.form[‘запрос’][0] для ключа id и как таковой
Ответ №1:
Вы можете отправлять свои данные в своем коде на python, вам не нужно отправлять.Файл json на ваш сервер. Если вы используете словарный тип данных, преобразуйте его в json и отправьте на сервер в теле вашего запроса. Вы увидите данные в postman. Если вы хотите сохранить это как файл json, возможно, вы сможете получить данные и сделать это на стороне вашего сервера.
Комментарии:
1. я собираюсь получать данные json со стороны клиента, и гораздо проще проверить данные json, а не текстовые данные.
2. Вы также можете преобразовать данные в json на стороне клиента