1 import flask #自己安裝 2 import json 3 4 server = flask.Flask(__name__) 5 #啟動一個服務,__name__ 代表當前一個py文件的名字 6 #就是把當前文件當作一個服務啟起來 7 8 #在這個服務下開發多個接口 9 #路徑 10 @server.route('/login')#裝飾器 下面的函數就不是普通的函數 是一個接口 11 def welcome(): #寫死的一個接口,不經過數據庫,造假的一個接口 12 data = {'code':0,'msg':'登錄成功','session_id':'fhjdskhfshfw'} 13 return json.dumps(data,ensure_ascii=False) 14 15 @server.route('/test') 16 def test(): 17 data = {'code':100,'msg':'test success'} 18 return json.dumps(data) 19 20 # server.run(port=8888,debug=True)#啟動服務 #默認端口號5000 21 server.run(host='0.0.0.0',port=8888,debug=True)#啟動服務 #默認端口號5000 22 #debug=True 改完代碼就會自動重啟 23 24 #host='0.0.0.0' 表示用本機實際的ip去訪問 25 26 #接口開發之獲取參數 27 ################第一種get請求################### 28 @server.route('/urldata')#get請求,參數在url里面的 29 def urlData(): 30 msg = flask.request.args.get('name') 31 data = {'msg':msg} 32 return json.dumps(data,ensure_ascii='False') 33 34 #有多個參數 寫多個參數就好 35 @server.route('/urldata') 36 def urlData(): 37 u = flask.request.args.get('username') 38 p = flask.request.args.get('password') 39 data = {'username':u,'password':p} 40 return json.dumps(data,ensure_ascii='False') 41 42 ################第二種post請求################### 43 @server.route('/post',methods=['post']) #post請求 44 def post(): 45 u = flask.request.args.get('username') #url 46 p = flask.request.args.get('password') #url 47 48 #k->v form-data里面的參數 49 stu_name = flask.request.values.get('stu_name') 50 addr = flask.request.values.get('addr') 51 data = {'username':u,'password':p,'stu_name':stu_name,'addr':addr} 52 return json.dumps(data,ensure_ascii='False') 53 54 #獲取到請求參數 55 @server.route('/add_student',methods=['post']) 56 def add_stu(): 57 stu_name = flask.request.values.get('name') 58 age = flask.request.values.get('age') 59 sex = flask.request.values.get('sex') 60 addr = flask.request.values.get('addr') 61 phone = flask.request.values.get('phone') 62 stu_class = flask.request.values.get('class') 63 return json.dumps({'msg':'添加成功!'},ensure_ascii=False) 64 65 #入參是json的 66 @server.route('/add_student2',methods=['post']) 67 def add_stu2(): 68 if flask.request.is_json: 69 stu_name = flask.request.json.get('name') 70 age = flask.request.json.get('age') 71 sex = flask.request.json.get('sex') 72 addr = flask.request.json.get('addr') 73 phone = flask.request.json.get('phone') 74 stu_class = flask.request.json.get('class') 75 print(flask.request.json) 76 return json.dumps({'msg':'添加成功2!'},ensure_ascii=False) 77 else: 78 return json.dumps({'msg':'入參請傳入json!'},ensure_ascii=False) 79 80 #上傳文件 81 @server.route('/file',methods=['post'])#上傳文件只能是post請求 不能是get請求 82 def uploadFile(): 83 file = flask.request.files.get('f') 84 print(file.filename) #獲取到上傳文件的文件名 85 file.save(file.filename)#保存文件 也可以寫絕對路徑 存入到你想存入的地方 86 return json.dumps({'msg':'上傳完成!'})