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獲取數據的功能了。
上幾張成功的圖。