Flask-RESTful介面開發學習筆記一:實現簡單的GET請求
阿新 • • 發佈:2019-02-16
1、首先安裝需要依賴的第三方包:
(1):Flask
(2):Flask-RESTful
如何安裝就不在囉嗦,pip也好,下載到本地再安裝也好,看你隨意。
2、我們先實現GET請求。
Q:什麼是GET請求。
A:簡單來說,GET請求,就是根據傳過來的引數條件,來獲取服務端的資料資訊,不會改變服務端的資料。更直接的,GET請求,拼成連結直接瀏覽器就可以訪問。
3、接下來實現我們的GET請求。
(1):首先導包,並例項化對像:
from flask import Flask, jsonify from flask.ext.restful import reqparse, Api, Resource app = Flask(__name__) app.debug = True api = Api(app)
(2):模擬建立一些我們需要的資料。
students = {
1: {'name': 'lily', 'age': '22'},
2: {'name': 'jerry', 'age': '23'},
3: {'name': 'joe', 'age': '34'}
}
(3):接下來建立parser對像,解釋一下:它是提供簡單並且統一的訪問 Flask 中flask.request
物件裡的任何變數的入口
parser = reqparse.RequestParser() parser.add_argument('id', type=int, required=True, help='ID不能為空。')
上面第二行程式碼解釋一下:他是給我們的ID加上了一些限制條件,type是型別,required是指他不能為空,help是如果出現了限制條件之外的,則返回這個提示。
(4):請求方法:
class get_stu(Resource): def get(self): data= parser.parse_args() id = data.get('id') if id == 0: return jsonify(students) if id > max(students.keys()): return jsonify({'msg': 'ID超出範圍'}) return jsonify(students.get(id))
請求的類需要繼承Resource,定義一個get的方法,則是指get請求,data是去獲取前端傳過來的資料,為什麼用這樣的方式獲取,前文已經說明。我們這裡定義了,如果id為0,則返回所有的學習,如果id超過了範圍,則給與相應的提示。如果id為某學生id,則返回該學生的資訊。
(5):新增路徑與執行:
api.add_resource(get_stu, '/get/stu/')
if __name__ == '__main__':
app.run(host='192.168.1.154', port=1234)
直接執行,就可以查實現我們的GET獲取資料的功能了。
上幾張成功的圖。