Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@Integralist
Last active December 7, 2020 11:21
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Integralist/264293f57bd07c302f683aeda4bbe598 to your computer and use it in GitHub Desktop.
Save Integralist/264293f57bd07c302f683aeda4bbe598 to your computer and use it in GitHub Desktop.
[Python Cookies] #python #cookies
from datetime import datetime, timedelta
from http import cookies
cookie_expires = (datetime.now() + timedelta(days=30)).strftime('%a, %d %b %Y %H:%M:%S')
c = cookies.SimpleCookie()
c['buzzfeedauth'] = f'id_token={u.id_token};access_token={u.access_token};refresh_token={u.refresh_token}'
c['buzzfeedauth']['domain'] = 'buzzfeed.io'
c['buzzfeedauth']['secure'] = True
c['buzzfeedauth']['httponly'] = True
c['buzzfeedauth']['expires'] = cookie_expires
#############################################
class MainHandler(tornado.web.RequestHandler):
def get(self):
if not self.get_cookie("mycookie"):
self.set_cookie("mycookie", "myvalue")
self.write("Your cookie was not set yet!")
else:
self.write("Your cookie was set!")
# http://www.tornadoweb.org/en/stable/web.html#tornado.web.RequestHandler.set_cookie
#############################################
class MainHandler(tornado.web.RequestHandler):
def get(self):
if not self.get_secure_cookie("mycookie"):
self.set_secure_cookie("mycookie", "myvalue")
self.write("Your cookie was not set yet!")
else:
self.write("Your cookie was set!")
application = tornado.web.Application([
(r"/", MainHandler),
], cookie_secret="__TODO:_GENERATE_YOUR_OWN_RANDOM_VALUE_HERE__")
# http://www.tornadoweb.org/en/stable/guide/security.html
#############################################
cookie_name = 'buzzfeedauth'
cookie_value = f'id_token={u.id_token};access_token={u.access_token};refresh_token={u.refresh_token}'
cookie_args = {
'secure': True,
'httponly': True,
}
self.set_cookie(cookie_name, cookie_value, domain=settings.get('cookie_domain'), expires_days=30, **cookie_args)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment