Rest API met Flask (Dutch)

compilerboiler

compilerboiler

Posted on February 24, 2020

Rest API met Flask (Dutch)

De Python Flask module is handig voor het bouwen van een Rust-API. Een Rest API gebruikt het HTTP protocol zoals het oorspronkelijk is ontworpen.

Het HTTP-protocol heeft veel verzoeken zoals de GET, PUT, POST en DELETE verzoeken. Deze verzoeken moeten worden gebruikt voor het toevoegen en verwijdering van data.

Voor het maken van uw web app backend kunt u een Rest API gebruiken. Omdat het uw backend (logica) ontkoppelt van uw frontend (presentatie), kunt u eenvoudig de frontend veranderen.

Dit betekent dat u uw frontend kunt updaten zonder dat u uw backend opnieuw hoeft te coderen.

U kunt eenvoudig uw Python-apps online zetten.

GET request

Een get request is de meest elementaire. Dit is wanneer u uw browser gebruikt om een url te openen. Het onderliggende HTTP-protocol doet dan het GET-verzoek waarop de server de gegevens terug stuurt.

Vaak geeft dat JSON gegevens terug. Met een Flask Rest API, kan je dat zo doen:

from flask import Flask, jsonify, request

app = Flask(__name__)

incomes = [
  { 'name': 'Alice', 'amount': 2000 },
  { 'name': 'Abbey', 'amount': 2200 },
]

@app.route('/incomes')
def get_incomes():
  return jsonify(incomes)

app.run(host='0.0.0.0', port=8080)

Open dan de url localhost:8080/incomes om de JSON-gegevens te zien. De front-end (Javascript) kan JSON-data inlezen en maken.

json data

POST requests

POST requests worden gebruikt om gegevens toe te voegen. De gebruiker doet normaal gesproken geen postverzoek, de front-end doet dit voor u. U kunt dit echter wel nabootsen met een tool genaamd curl of een extensie gebruiken.

Een nieuw POST requests afhandelen:

@app.route('/incomes', methods=['POST'])
def add_income():
  incomes.append(request.get_json())
  return '', 204

Dan kunt u een POST request doen. Om een postverzoek te starten, kunt u gebruik maken van curl.

curl -X POST -H "Content-Type: application/json" -d '{"name":"Aaron","amount":5000}' http://localhost:8080/incomes 

Normaal gesproken doet uw webapplicatie het webverzoek. Als u zich niet op uw gemak voelt met de terminal, kunt u de postman-extensie gebruiken.

http post

💖 💪 🙅 🚩
compilerboiler
compilerboiler

Posted on February 24, 2020

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

Waarom Enumerate? (Dutch)
python Waarom Enumerate? (Dutch)

February 25, 2020

Rest API met Flask (Dutch)
python Rest API met Flask (Dutch)

February 24, 2020

Pandas data analyse (Dutch)
python Pandas data analyse (Dutch)

February 24, 2020

Wat is Tkinter? (Dutch)
python Wat is Tkinter? (Dutch)

February 24, 2020

Data types in Python (Dutch)
python Data types in Python (Dutch)

February 23, 2020