`
phyeas
  • 浏览: 164682 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

在Python3.0中处理web请求5-处理cookie

阅读更多

在处理web请求时,处理Cookie是非常重要的一个环节,要处理用户session首先就要处理用户提交的cookie。在python(wsgi)中并没有直接获取cookie值的方法,以下是我今天参照类库帮助写的一个获取用户发送来的cookie的demo:

首先先从服务器发送cookie数据到客户端:

def application(env,start_response):
    cookie = SimpleCookie()
    cookie["name"] = urllib.parse.quote("phyeas")
    cookie["name"]["expires"]=1000000
    cookie["name"]["path"]="/"    
    start_response("200 OK",[("Content-Type","text/html;charset=UTF-8"),('Set-Cookie', cookie.output(header=""))])
    return ["Hello World"]

 

 以下是读取这些Cookie数据:

def application(env,start_response):
    cookie = SimpleCookie(env.get("HTTP_COOKIE",""))
    name=cookie.get("name","")
    print(name.key+" , "+name.value)
    start_response("200 OK",[("Content-Type","text/html;charset=UTF-8")])
    return ["Hello World"]

 得到输出:

Http Service on port 8080....
name , phyeas
localhost - - [06/Apr/2009 01:31:42] "GET / HTTP/1.1" 200 11

需要注意的是必须设置cookie的expires,而且在output的时候需要将header设置为"",否则将默认输出'Set-Cookie'

还有就是env中获取"HTTP_COOKIE"的时候不一定有这个key

要导入的包有:

from http.cookies import SimpleCookie
import urllib

  今天就唠到这……睡觉去

 

PS:如果没用wsgi,对应的header名称应是"cookie"……

分享到:
评论

相关推荐

    Python库 | gm-3.0.0.14-py3-none-win32.whl

    python库。 资源全名:gm-3.0.0.14-py3-none-win32.whl

    Polygon3-3.0.9.1-cp36-cp36m-linux-aarch64.zip

    综上所述,Polygon3-3.0.9.1-cp36-cp36m-linux_aarch64.zip是一个专为Python 3.6和Linux aarch64系统设计的图形处理库,其提供的强大功能和高效性能,使得开发者在处理三维几何问题时有了得力的工具。无论是进行科学...

    Polygon3-3.0.9.1-cp39-cp39-win-amd64.whl

    Polygon3-3.0.9.1-cp39-cp39-win_amd64.whl python模块名称:Polygon3 文件格式:whl 安装方式:切换到whl路径,执行pip install Polygon3-3.0.9.1-cp39-cp39-win_amd64.whl

    tensorrt-8.2.3.0-cp38-none-win_amd64.zip

    tensorrt 8.2.3.0版本 python库安装 whl文件,安装只需要切换到对应whl目录然后执行pip install [whl文件名],注意cp表示python版本,比如cp38表示是python3.8的环境,amd64表示是windows x64系统

    Python库 | python_gdcm-3.0.9.0-cp36-cp36m-win32.whl

    资源分类:Python库 所属语言:Python 资源全名:python_gdcm-3.0.9.0-cp36-cp36m-win32.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Python库 | tencentcloud-sdk-python-3.0.122.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:tencentcloud-sdk-python-3.0.122.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Python库 | fondat_core-3.0b37-py3-none-any.whl

    《Python库:fondat_core-3.0b37-py3-none-any.whl的探索与应用》 在IT行业中,Python作为一种广泛使用的高级编程语言,拥有丰富的库支持,使得开发者能高效地进行各种任务的开发。今天我们将聚焦于一个特定的...

    Python库 | gm-3.0.135-cp37-cp37m-manylinux1_x86_64.whl

    资源分类:Python库 所属语言:Python 使用前提:需要解压 资源全名:gm-3.0.135-cp37-cp37m-manylinux1_x86_64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Polygon3-3.0.9.1-cp38-cp38-win_amd64.zip

    在给定的信息中,我们可以看到具体的文件名为"Polygon3-3.0.9.1-cp38-cp38-win_amd64.whl",这表明它是针对Python 3.8版本(cp38)的,并且适用于64位Windows系统(win_amd64)。 安装Polygon3的方法是首先确保你...

    python官方3.0版本msi安装包

    本安装包“python-3.0.msi”是针对Windows操作系统设计的 MSI(Microsoft Installer)格式,方便用户在Windows环境下快速安装Python 3.0。 Python 3.0的主要变化和新特性包括: 1. **打印语句作为函数**:在Python...

    Python库 | sego-0.1.3.0-py3-none-any.whl

    在Python中,有许多库专注于中文处理,如jieba用于中文分词,pypinyin用于拼音转换,或者thulac用于词性标注等。 **如何安装和使用sego库** 使用`pip`工具,你可以轻松地将`sego-0.1.3.0-py3-none-any.whl` 安装到...

    Python库 | xquant_python-3.0.290-cp36-none-win_amd64.whl

    资源分类:Python库 所属语言:Python 资源全名:xquant_python-3.0.290-cp36-none-win_amd64.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    python3.0菜鸟教程.zip

    以上只是 Python 3.0 学习的一部分,实际教程中还可能包括正则表达式、网络编程、多线程、并发处理、数据库操作等内容。在 www.runoob.com 的 Python 3.0 菜鸟教程中,你将逐步学习并实践这些知识,构建坚实的编程...

    Python库 | libvirt_test_api-3.0-py3-none-any.whl

    《Python库libvirt_test_api-3.0-py3-none-...通过`libvirt_test_api-3.0-py3-none-any.whl`这个wheel文件,可以轻松地在Python 3环境中安装并使用该库,实现对libvirt功能的自动化测试,从而提升开发效率和软件质量。

    Python库 | crdatamgt-3.0.27-py3-none-any.whl

    总结,"crdatamgt-3.0.27-py3-none-any.whl" 是一个针对Python 3.x的数据管理库,通过`pip`工具可以轻松安装到Python环境中。这个库可能包含各种数据处理功能,适用于数据密集型的项目,特别是后端开发场景。了解和...

    Python库 | indico_plugin_citadel-3.0-py3-none-any.whl

    总的来说,`indico_plugin_citadel-3.0-py3-none-any.whl`是Python开发中的一个重要资源,它为Indico用户提供额外的功能扩展。通过理解和熟练使用这样的库,开发者能够更好地利用Python生态系统,提升项目效率,实现...

    Dive into Python 3.0

    这要求开发者在处理多字节字符时更加谨慎。 - **HTTP Web服务**:对于HTTP Web服务而言,Python 3中的`httplib2`模块可以获取HTTP头部和数据。其中头部信息返回为字符串,而主体部分则返回为字节流。 - **序列化**...

    Python库 | gm-3.0.0.28-py2-none-win_amd64.whl

    python库。 资源全名:gm-3.0.0.28-py2-none-win_amd64.whl

Global site tag (gtag.js) - Google Analytics