Как загрузить аргументы строки запроса в схему Flask Marshmallow

#python #flask #marshmallow

#python #flask #marshmallow

Вопрос:

У меня есть POST-запрос, определенный в моем приложении Flask, как показано ниже:

 https://www.foo.com/<foo_id>?bar_id=3
  

Я получаю параметр path foo_id , как показано ниже:

 from flask_restplus import Namespace, Resource

ns = Namespace('Foo API')

@ns.route("/<string:foo_id>")
class FooExecute(Resource):

    def get(self, foo_id):
        print('foo_id = {}'.format(foo_id))
  

Хотя я не могу получить параметр запроса bar_id . Каков правильный способ его извлечения?

Ответ №1:

Вы можете попробовать использовать класс запроса внутри Flask, чтобы получить параметры следующим образом:

 from flask import request

request.args.get('bar_id')

  

Ответ №2:

Я использую подход к запросам, который является лучшим.

смотрите ссылку на документацию

Сначала вам нужно будет установить и импортировать запросы через

 pip install requests
  

вот пример кода, который будет работать для вас.
просто <foo_id> замените своим основным значением

 import requests
import json

item = { "bar_id": "3"}
resp1 = requests.post("https://www.foo.com.com/<foo_id>/?", data=item))

print('data sent successfully')
print (resp1.status_code)


content = json.loads(resp1.content)
print(content)