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':'上传完成!'})