26
loading...
This website collects cookies to deliver better user experience
GET - İstemci tarafından sunucudan veri seçmek veya almak için kullanılır.
POST - İstemci tarafından sunucuya veri göndermek veya yazmak için kullanılır.
PUT - İstemci tarafından sunucudaki mevcut verileri güncellemek için kullanılır.
DELETE - İstemci tarafından sunucudaki mevcut verileri silmek için kullanılır.
$ sudo apt install python3-pip
$ pip3 install flask
$ pip3 install flask_restful
$ pip3 install pandas
from flask import Flask
from flask_restful import Api, Resource, reqparse
import pandas as pd
app = Flask(__name__)
api = Api(app)
class Users(Resource):
def get(self):
data = pd.read_csv('users.csv')
data = data.to_dict('records')
return {'data' : data}, 200
def post(self):
parser = reqparse.RequestParser()
parser.add_argument('name', required=True)
parser.add_argument('age', required=True)
parser.add_argument('city', required=True)
args = parser.parse_args()
data = pd.read_csv('users.csv')
new_data = pd.DataFrame({
'name' : [args['name']],
'age' : [args['age']],
'city' : [args['city']]
})
data = data.append(new_data, ignore_index = True)
data.to_csv('users.csv', index=False)
return {'data' : new_data.to_dict('records')}, 201
api.add_resource(Users, '/users')
$ python3 flask_app.py
Serving Flask app 'flask_app' (lazy loading)
Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
Debug mode: off
Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
GET http://127.0.0.1:5000/users
POST http://127.0.0.1:5000/users?name=Bugra&age=29&city=Istanbul
GET http://127.0.0.1:5000/users
GET http://127.0.0.1:5000/Tom