十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家分享的是有关flask接受不同post请求的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
公司专注于为企业提供网站制作、成都网站建设、微信公众号开发、商城开发,微信小程序开发,软件按需定制开发等一站式互联网企业服务。凭借多年丰富的经验,我们会仔细了解各客户的需求而做出多方面的分析、设计、整合,为客户设计出具风格及创意性的商业解决方案,创新互联更提供一系列网站制作和网站推广的服务。
一般来说,传递请求参数的方式有两种,一是打包成 JSON 之后再传递,二是直接放进 URL 进行传递 。对于第一种方式,一般用 POST 请求来传递参数,然后用 FLASK 中 request 模块的 get_json() 方法获取参数。而对于第二种方式,一般用 GET 请求传递参数,然后从 request.args 中用 get() 方法获取参数,不过需要说明的是用 POST 请求也可以通过 URL 的方式传递参数,而且获取参数的方式与 GET 请求相同。下面用代码来说明获取参数的过程。
1. 获取 POST 请求参数
from flask import request, jsonify @app.route('/', methods = ["POST"]) def post_data(): # 假设有如下 JSON 数据 #{"obj": [{"name":"John","age":"20"}] } # 方法一 data = request.get_json() # 获取 JSON 数据 data = pd.DataFrame(data["obj"]) # 获取参数并转变为 DataFrame 结构 # 方法二 # data = request.json # 获取 JOSN 数据 # data = data.get('obj') # 以字典形式获取参数 # 经过处理之后得到要传回的数据 res = some_function(data) # 将 DataFrame 数据再次打包为 JSON 并传回 # 方法一 res = '{{"obj": {} }}'.format(res.to_json(orient = "records", force_ascii = False)) # 方法二 # res = jsonify({"obj":res.to_json(orient = "records", force_ascii = False)}) return res
2. 获取 GET 请求参数
@app.route('/', methods = ["GET","POST"]) # GET 和 POST 都可以 def get_data(): # 假设有如下 URL # http://10.8.54.48:5000/index?name=john&age=20 #可以通过 request 的 args 属性来获取参数 name = request.args.get("name") age = request.args.get("startDate") # 经过处理之后得到要传回的数据 res= some_function(name, age) # 将数据再次打包为 JSON 并传回 resp = '{{"obj": {} }}'.format(res.to_json(orient = "records", force_ascii = False)) return resp
感谢各位的阅读!关于flask接受不同post请求的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!