重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
flask request 对象
创新新互联,凭借十年的网站制作、成都做网站经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有成百上千家案例。做网站建设,选创新互联。这个对象是WEB客户端发送到web服务端的全局请求对象,request需要从flask模块中导入。
form args cookies files method
request监听如下信息:
1、form(POST) -> ImmutableMultiDict
一般为接收web客户端通过post方式发送。
request.form 方法
参考args方法
测试:curl -d "name=zwhset&age=14" "http://10.1.0.123:8080/"
2、args(GET) -> ImmutableMultiDict
接收web客户端get请求并对?号后面的key&value进行解析
exp:http://10.1.0.123:8080/?name=zwhset&age=14
ImmutableMultiDict([('age', u'14'), ('name', u'zwhset')])
我们可以通过to_dict()方法获取一个字典对象
result = request.args
get_args = result.to_dict()#转换成一个字典对象
{'age': u'14', 'name': u'zwhset'}
测试:curl "http://10.1.0.123:8080/?name=zwhset&age=14"
最佳实践:
可转换成字典类型,把数据往模块方法里扔,同时模块方法里面做验证以及处理。
3、cookies -> dict
字典保存着cookies的名称和值
测试:curl -b "a=1;b=2;c=3" "http://10.1.0.123:8080/?name=zwhset&age=14"
注意:curl发送cookies不同于get与post,要用;分号结尾。
4、files -> dict
用于保存文件的上传数据
注意:客户端需要在form标签里声明 enctype="multipart/form-data",可上传多个文件
files["the_file"]的方法 #the_file表示input的name
['close', 'content_length', 'content_type', 'filename', 'headers', 'mimetype', 'mimetype_params', 'name', 'save', 'stream']
再利用save方法进行文件存储,用filename可获取客户端传上来的文件名
注意:要对客户端上传的数据进行检查,例如文件名可用secure_filename()来进行检查
5、method
当前请求的模式,一般为字符串。
exp:request.method 获取client 请求方式
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。