python生产实战 Cookie 的那些事儿~

点击python编程从入门到实践置顶 公众号重磅 python入门资料,第一时间送达javascript



仍是牛java


读完须要python

5
分钟

速读仅需 2 分钟编程



/ python 入门 Cookie 处理 /api

本篇是对高性能服务端框架 fastapi 请求部分的拾遗,主要会介绍 Cookie 。经过本部分的学习能够对请求的信息作必定程度的预处理,想作深度的研究和自定制能够持续关注,后续的篇章会从源码的角度去分析,这里简单提一下个人思考逻辑:1.先会用 2.能知足业务需求 3.从本身感兴趣的部分的源码开始进行研究再结合本身生产环境出现的 bug 进行反查相关源码进行深度学习浏览器

1微信


   

Cookie 操做cookie

1.1session


   

什么是 Cookie闭包

本节先介绍一下 Cookie,若你对 Cookie 已经是很清楚了则可跳过直接看下一小结。

咱们先看一下百度百科给出的解释:
Cookie 有时也用其复数形式 Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行 Session 跟踪而储存在用户本地终端上的数据(一般通过加密),由用户客户端计算机暂时或永久保存的信息。
Cookie 是一个保存在客户机中的简单的文本文件, 这个文件与特定的 Web 文档关联在一块儿, 保存了该客户机访问这个 Web 文档时的信息, 当客户机再次访问这个 Web 文档时这些信息可供该文档使用。因为“Cookie”具备能够保存在客户机上的神奇特性, 所以它能够帮助咱们实现记录用户我的信息的功能, 而这一切都没必要使用复杂的 CGI 等程序。

举例来讲, 一个 Web 站点可能会为每个访问者产生一个惟一的 ID, 而后以 Cookie 文件的形式保存在每一个用户的机器上。若是使用浏览器访问 Web, 会看到全部保存在硬盘上的 Cookie。在这个文件夹里每个文件都是一个由“名/值”对组成的文本文件,另外还有一个文件保存有全部对应的 Web 站点的信息。在这里的每一个 Cookie 文件都是一个简单而又普通的文本文件。透过文件名, 就能够看到是哪一个 Web 站点在机器上放置了 Cookie(固然站点信息在文件里也有保存)。

一句话总结: Cookie 作身份识别功能。

1.2


   

fastapi 读取 Cookie 信息

在 fastapi 中,咱们能够利用 Cookie 模块来声明 cookies。Cookie 是 Query、Path 的姐妹类,它们都继承自 Param 类。

from fastapi import Cookie, FastAPIapp = FastAPI()cookie_info: str = Cookie(None)@app.get("/get_cookie/")async def read_cookie_info(*, cookie_info: str = Cookie(None)): return {"cookie_info": cookie_info}



1.3


   

fastapi 返回 Cookie 信息

可在 Response 中返回 Cookie 信息给客户端。

使用 Response 参数

能够在路径操做函数中声明 Response 参数,而后给这个临时的 Response 对象设置 cookie 信息。fastapi 经过这个临时的 Response 对象解析出 cookie 信息,而后放入到最终返回的 Response 对象中。也能够在依赖项中使用 Response 参数,而后设置 cookie 信息。

from fastapi import FastAPI, Responseapp = FastAPI()@app.get("/get_cookie/")def read_cookie_info(response: Response): response.set_cookie(key="session_info", value="xsxaxsafafa=fasfa=faafakfaslkfla;afsasfafafssda") return {"message": "add cookie"}

直接返回 Response

咱们也能够在直接返回的 Response 对象中设置 cookie 信息。

from fastapi import FastAPIfrom fastapi.responses import JSONResponse
app = FastAPI()

@app.get("/get_cookie/")def read_cookie_info(): content = {"message": "add cookie"} response = JSONResponse(content=content) response.set_cookie(key="session_info", value="xsxaxsafafa=fasfa=faafakfaslkfla;afsasfafafssda") return response



2


   

总结

1.解释了什么是 Cookie
2.在 fastapi 中如何使用和设置 Cookie



原创不易,只愿能帮助那些须要这些内容的同行或刚入行的小伙伴,你的每次 点赞分享 都是我继续创做下去的动力,我但愿能在推广 python 技术的道路上尽我一份力量,欢迎在评论区向我提问,我都会一一解答,记得一键三连支持一下哦!


加入python学习交流微信群,请后台回复「入群



往期推荐

python生产实战 python 闭包之庖丁解牛篇

大型fastapi项目实战 靠 python 中间件解决方案涨薪了

大型fastapi项目实战 高并发请求神器之aiohttp(下)

大型fastapi项目实战 高并发请求神器之aiohttp(上) [建议收藏]


本文分享自微信公众号 - python编程军火库(PythonCoder1024)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索