Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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!'
like image 249
user12871 Avatar asked Jun 18 '14 18:06

user12871


People also ask

What is query string in GET request?

A query string is the portion of a URL where data is passed to a web application and/or back-end database. The reason we need query strings is that the HTTP protocol is stateless by design.

How do you pass a query parameter in a URL Flask?

How do you pass a parameter in a python query? To send parameters in URL, write all parameter key:value pairs to a dictionary and send them as params argument to any of the GET, POST, PUT, HEAD, DELETE or OPTIONS request. then https://somewebsite.com/?param1=value1&param2=value2 would be our final url.


2 Answers

if you want to convert the query string (MultiDict to normal dict)

from flask import Flask, jsonify, request

app = Flask(__name__)

@app.route("/")
def hello():
    all_args = request.args.to_dict()
    return jsonify(all_args)
like image 109
paritosh mishra Avatar answered Nov 06 '22 00:11

paritosh mishra


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)
like image 38
Sean Vieira Avatar answered Nov 06 '22 01:11

Sean Vieira