本文實(shí)例講述了Sanic框架Cookies操作。分享給大家供大家參考,具體如下:
Sanic是一個(gè)類似Flask的Python 3.5+ Web服務(wù)器,它的寫入速度非???。除了Flask之外,Sanic還支持異步請求處理程序。這意味著你可以使用Python 3.5中新的閃亮的異步/等待語法,使你的代碼非阻塞和快速。
在上一篇《Sanic框架配置》中已經(jīng)講到,如何在Sanic進(jìn)行相關(guān)的配置,接下來將介紹一下Sanic的Cookies的使用,Cookies是用戶瀏覽器內(nèi)部的一些數(shù)據(jù),Sanic可以寫入和讀取存儲(chǔ)為鍵值對的Cookie
在返回響應(yīng)時(shí),可以在Response
對象上設(shè)置Cookie:
from sanic.response import text@app.route("/set_cookie")async def set_cookie(request): response = text("set cookie success") response.cookies["test"] = "test" return response
Cookie可以像字典一樣設(shè)置,并且具有如下參數(shù):
expires:過期時(shí)間,Cookie在客戶端瀏覽器上過期的時(shí)間 path:此Cookie使用的URL的子集。默認(rèn)為/
comment:評(píng)論(元數(shù)據(jù)) domain:Cookie的有效域 max-age:Cookie的活躍秒數(shù) secure:指定Cookie是否僅通過HTTPS發(fā)送 httponly:指定Cookie是否不能被Javascript讀取舉個(gè)例子:
@app.route("/set_cookie")async def set_cookie(request): response = text("set cookie success") response.cookies["test"] = "test" response.cookies["test"]["max-age"] = 10 return response
設(shè)置此Cookie的活躍秒數(shù)為10,反復(fù)獲取此Cookie會(huì)發(fā)現(xiàn),過了10s后此Cookie不存在了
用戶的Cookie可以通過Request
對象的cookies
字典進(jìn)行訪問:
from sanic.response import text@app.route("/get_info")async def get_info(request): test = request.cookies.get("test") return text("cookie:{}".format(test)
可以在語義上或明確的刪除Cookie
from sanic.response import text@app.route("/del_info")async def del_info(request): response = text("delete cookie success") del response.cookies["test"] return response
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python入門與進(jìn)階經(jīng)典教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
|
新聞熱點(diǎn)
疑難解答
圖片精選