Search code examples
pythonrestflaskvonage

How to process GET Query String with Flask


How do I process a long GET request with Flask? Is is possible to get a dictionary all the params?

Here is the query string I'm trying to parse:

/?msisdn=19150000001&to=12108054321&messageId=000000FFFB0356D1&text=This+is+an+inbound+message &type=text&message-timestamp=2012-08-19+20%3A38%3A23

And Here is the code I have to far which only gets the 'msisdn' value:

import os
from flask import Flask
from flask import request
from flask import jsonify

app = Flask(__name__)

@app.route('/', methods=['GET'])
    def hello():
        if request.method == 'GET':
            json = request.args.getlist('msisdn')
            return str(json)
        else:
            return 'Hello World!'

Solution

  • Yes. request.args is a MultiDict:

    from flask import Flask, jsonify, request
    
    app = Flask(__name__)
    
    @app.route("/")
    def hello():
        all_args = request.args.lists()
        return jsonify(all_args)