将数据提交服务器运算并返回的两种方式
GET 方法
后端flask框架
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/process', methods=['GET'])
def process_data():
# recieve data
try:
a = float(request.args.get('data_a'))
b = float(request.args.get('data_b'))
except (TypeError, ValueError):
return jsonify({'error': 'Invalid or missing data'}), 400
# function used to process task
x, y = function(a, b)
# prepare returned data
response = {
'X': x,
'Y': y,
}
return jsonify(response)
if __name__ == '__main__':
app.run(host="0.0.0.0", port=xxx, debug=True)
测试方法,浏览器:
http://remotehost:xxx/process?data_a=3.33&data_b=4.33
POST 方法
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/process', methods=['POST'])
def process_data():
try:
a = float(request.args.get('data_a'))
b = float(request.args.get('data_b'))
except (TypeError, ValueError):
return jsonify({'error': 'Invalid or missing data'}), 400
# core function
x, y = function(a,b)
# return data
response = {
'X': x,
'Y': y,
}
return jsonify(response)
if __name__ == '__main__':
app.run(host="0.0.0.0", port=xxx, debug=True)
测试方法, curl
curl -X POST http://remotehost:xxx/process -H "Content-Type: application/json" -d '{"data_a": 30.931212203974912, "data_b": 121.5003097272177}'
路由
flask后端代码有路由的概念,其他语言后端是否也有呢?
文档信息
- 本文作者:Chaojie Men
- 本文链接:https://menchaojie.github.io/fragment/get_and_post/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)