У меня есть простое приложение Flask (версия Flask 1.0.3
) с одним приложением. URL /ask
и обработчик для обработки строки запроса POST пар (имя, значение), но объект request.args
хранит не все пары параметров, только первую пару. Почему остальные выбывают?
Я уже пытался распечатать объект request.args
, но он показывает только первую пару параметров.
Вот приложение Flask
import json
from flask import (
Flask,
jsonify,
request,
Response
)
app = Flask(__name__)
@app.route('/')
def home():
return jsonify(message="Hello, World!")
@app.route('/ask', methods=['POST'])
def ask():
return str(request.args)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000, debug=True)
Вот простой запрос с использованием инструмента CLI http
с двумя параметрами и аргументами ответа - обратите внимание, что аргументы ответа содержат только первый параметр
$ http POST http://127.0.0.1:5000/ask?q1=name&q2=address
[1] 58720
[2019-06-12 15:29:27 $ HTTP/1.0 200 OK
Content-Length: 36
Content-Type: text/html; charset=utf-8
Date: Wed, 12 Jun 2019 14:29:27 GMT
Server: Werkzeug/0.15.4 Python/3.6.2
ImmutableMultiDict([('q1', 'name')])
Я получаю тот же результат, используя curl
curl -X POST http://127.0.0.1:5000/nest?q1=name&q2=address
Я что-то упускаю? 1020 *