【发布时间】:2011-10-31 21:03:57
【问题描述】:
如何根据客户偏移量创建日期时间戳?我整天都在搞这个。这个想法是让用户登录并根据他们的时区创建 cookie,以便在这么长时间后过期。
#!/usr/bin/env python
import tornado.auth
import tornado.database
import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web
import tornado.escape
import hashlib
import unicodedata
import markdown
import os.path
import re
import urllib
import sys
import time
import json
import MySQLdb
import Cookie
from tornado.options import define, options
import datetime
from nptime import nptime
define("port", default=8001, help="Server port", type=int)
class Application(tornado.web.Application):
def __init__(self):
handlers = [
(r"/", MainHandler),
(r"/test", Test),
]
tornado.web.Application.__init__(self, handlers)
self.db = tornado.database.Connection(
host=options.mysql_host, database=options.mysql_database,
user=options.mysql_user, password=options.mysql_password)
class BaseHandler(tornado.web.RequestHandler):
@property
def db(self):
return self.application.db
class MainHandler(BaseHandler):
def get(self):
self.set_header("Content-Type", "text/html")
self.write()
self.finish()
class Test(BaseHandler):
def post(self):
tmz = self.get_argument('tmz', '')
cur = datetime.datetime.utcnow().strftime('%A, %B %d, %Y %I:%M:%S %p 'tmz, gmtime())
self.set_header("Content-Type", "text/html")
self.write(cur)
self.finish()
def main():
tornado.options.parse_command_line()
http_server = tornado.httpserver.HTTPServer(Application())
http_server.listen(options.port)
tornado.ioloop.IOLoop.instance().start()
if __name__ == "__main__":
main()
tmz 是发送的时区,例如 -0400 或 +0500
【问题讨论】:
标签: python datetime offset tornado