I built a pyton flask app like below:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
from flask import Flask, request, jsonify, redirect
from flask_restful import Api, Resource, reqparse
import database_operators
import json
app = Flask(__name__)
app.config.update(RESTFUL_JSON=dict(ensure_ascii=False))
api = Api(app)
@app.route('/task/<string:task_no>',methods=['get'])
def get_task(task_no):
db = database_operators.task_database()
task = db.get(task_no)
return jsonify(task)
@app.route('/task/create',methods=["post"])
def create_task():
print(request.data)
return "error"
if __name__ == '__main__':
app.run(debug=True)
And I try to test create_task like below:
url = 'http://localhost:5000/task/create'
r = requests.post(url,data={"id":"good"})
print(r.text)
And the console just print:
b''
127.0.0.1 - - [01/Dec/2024 15:07:35] "POST /task/create HTTP/1.1" 200 -
How can I get the request data?
@app.route('/task/create',methods=["post"])
def create_task():
print(request.data)
return "error"
You are doing it wrong u have not accessed request.data
u should use data = request.get_json() or request.get_data()
then simply use print(data) to see data
1