2020-04-22 解决了requests发送打包和flask接口接收并解析提取问题了

一、发送数据

我想要的效果,我这边是一个人脸注册的前台,抠取人脸图像,加上注册时候输入的身份ID和手机号码,一起打包发送给我的后端Flask接口里面的解析函数

一、首先我要写前端发送的代码

#先定义后端flask的接口'解析data'

jiexidata_url ="http://xxx.xxx.xxx.xxx:xx/jiexidata"

#我要发的数据以字典的形式先进行第一层封装,为何要以字典格式?

想要发送一些表单形式的数据,只需简单的传递一个字典给data关键字,在发送请求的时候,会自动编码为表单的形式,

参考python+requests实现接口测试 - get与post请求使用丶一个站在Java后端设计之路的男青年个人博客网站

datas = {'Identity':xxxx,'mobile':xxxxxxx}

#同样的功能,假设我要验证登陆的话,就是这样

datas = {'mobile':'125800','password':'123456'}

# 然后启用requests的post,将数据发送出去,同时用一个r接收前端发完数据,后端接口处理完后返回的结果

r = requests.post(jiexidata_url ,data=datas)

#输出返回的结果

print(r.text)



二、接着我要写我的flask接口函数的代码


@接口函数的名字,比如说我的接口函数就是jiexidata,那就是这样写

@app.route("/jiexidata",methods=['POST','GET']) #注意,默认的emothods是指用GET方法的,也就是说你前端使用requests.get方法链接到这个接口才会有相应的methods相应,如果要接受前端使用requests.post发来的东西的话,这里要多谢上‘POST’方法,不然无论你前端怎么请求,你前端返回的结果永远是The method is not allowed for the requested URL,这点要注意,参考这位老哥,真的万分感谢!The method is not allowed for the requested URL_Python_Tanyxn的博客-CSDN博客

接着你就可以写自己的jiexidata函数

def jiexidata():

    mobile = request.form.get("mobile") #前面说到,我们时使用post以表单形式传送参数的

    Identity = request.form.get("Identity ")

    return mobile



三、接着去执行你的代码,先开后台接口,再开前端,如果控制台输出你前台输入的mobile的话,就是成功了


四、感想:今晚没白熬夜,记下来是加深理解,怕忘记,同时也希望对同样困惑的同志有些许帮助吧,后面我会更新发送图片以及接收图片的功能,欢迎大家来交流学习!

你可能感兴趣的:(2020-04-22 解决了requests发送打包和flask接口接收并解析提取问题了)