Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to send http request to python flask server from desktop application?

I have configured python server using flask framework. Now I want to send request to server from my desktop application. My server location is : http://127.0.0.1:5000/

I have written code which work from browser but i want to access that code from my desktop app.

import flask,flask.views import os import functools 
app=flask.Flask(__name__)

app.secret_key="xyz" users={'pravin':'abc'}
class Main(flask.views.MethodView):
    def get(self):
        return flask.render_template('index.html')
    def post(self):
        if 'logout' in flask.request.form:
            flask.session.pop('username',None)
            return flask.redirect(flask.url_for('index'))
        required=['username','passwd']
        for r in required:
        if r not in flask.request.form:
            flask.flash("Error: {0} is required.".format(r))
            return flask.redirect(flask.url_for('index'))

        username=flask.request.form['username']
        password=flask.request.form['passwd']
        if username in users and users[username]==password:
            flask.session['username']=username
        else:
            flask.flash("Username doesn`t exist or incorrect password.")

        return flask.redirect(flask.url_for('index'))

app.add_url_rule("/",view_func=Main.as_view("index"),methods=["GET","POST"])
app.debug=True
app.run()
like image 958
pravin4659 Avatar asked Dec 27 '22 21:12

pravin4659


1 Answers

You have to use a python library to access the url from the desktop app.

Try requests module. It makes working with http request easy and describes itself as an elegant and simple HTTP library for Python, built for human beings.

Sample code:

    >>> r = requests.get('http://127.0.0.1:5000')
    >>> r.status_code
        <Response [200]>
like image 164
codecool Avatar answered Jan 05 '23 15:01

codecool