{ "info": { "author": "MitchellChu", "author_email": "zxdjsj@126.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Internet :: WWW/HTTP :: Session" ], "description": "Torndsession Session\r\n====================\r\n\r\n\r\n`Torndsession `_ is a session extension for `Tornado `__ web framework.\r\nTorndsession support application memory, file, redis or memcached to save session data for request, and it's easy to extend for developer.\r\n\r\nQuick links\r\n===========\r\n\r\n* `Documentation `_\r\n\r\n* `Source (github) `_\r\n\r\n* `Torndsession License `_\r\n\r\n* `Examples `_\r\n\r\n\r\nHello, Session\r\n==============\r\n\r\nHere is a simple \"Hello, Session\" example web app for Tornado with Torndsession.::\r\n\r\n\r\n import tornado.web\r\n import tornado.httpserver\r\n import tornado.ioloop\r\n import torndsession\r\n\r\n\r\n class Application(tornado.web.Application):\r\n def __init__(self):\r\n handlers = [\r\n (r\"/\", MainHandler),\r\n ]\r\n settings = dict(\r\n debug=True,\r\n )\r\n # sid_name, lifetime added in 1.1.5.0\r\n # sid_name: the name of session id in cookies.\r\n # lifetime: session default expires seconds.\r\n session_settings = dict(\r\n driver='memory',\r\n driver_settings={'host': self},\r\n force_persistence=True,\r\n sid_name='torndsessionID',\r\n session_lifetime=1800\r\n ),\r\n settings.update(session=session_settings)\r\n tornado.web.Application.__init__(self, handlers, **settings)\r\n\r\n\r\n class MainHandler(torndsession.sessionhandler.SessionBaseHandler):\r\n def get(self):\r\n self.write(\"Hello, Session.
\")\r\n if 'data' in self.session:\r\n data = self.session['data']\r\n else:\r\n data = 0\r\n self.write('data=%s' % data)\r\n self.session[\"data\"] = data + 1\r\n\r\n\r\n def main():\r\n http_server = tornado.httpserver.HTTPServer(Application())\r\n http_server.listen(8000)\r\n tornado.ioloop.IOLoop.instance().start()\r\n\r\n\r\n if __name__ == \"__main__\":\r\n main()\r\n\r\n\r\nIn this example, Request handler obtain memory session feature, it just inherit from SessionBaseHandler. more session example see `torndsession demos `_.\r\n\r\n\r\nInstallation\r\n============\r\n\r\n**Automatic installation**:\r\n\r\n::\r\n\r\n pip install torndsession\r\n\r\nTorndsession is listed in `PyPI `__ and can be installed with `pip` or `easy_install`. Note that this installation can not install demos applicatinos which be included in source code.\r\n\r\nThe another way is use `git+` install torndsession from github.\r\n\r\n::\r\n\r\n pip install git+https://github.com/mitchellchu/torndsession\r\n\r\n\r\n\r\n**Manual installation**:\r\n\r\nIn this way, you need download the source from `PyPI `__.::\r\n\r\n tar xvzf torndsession.tar.gz\r\n cd torndsession\r\n python setup.py build\r\n sudo python setup.py install\r\n\r\n\r\nThe Torndsession source code is hosted on `GitHub `_.\r\n\r\n\r\nUpdated\r\n=======\r\n\r\nTorndsession 1.1.5:\r\n\r\n- fixed bug in 1.1.4\r\n- default session id value generator changed. see `#ISSUE 12# `_.\r\n- added two custom key in settings.\r\n\r\n - sid_name: session's cookie name.\r\n - session_lifetime: default expired seconds for session.\r\n\r\nTorndsession 1.1.4:\r\n\r\n- fixed bug\r\n\r\nTorndsession 1.1.3 fixed some bug and supported python 3.x.\r\n\r\n\r\nRequires\r\n========\r\n\r\n\r\n+ `Tornado `__\r\n+ `Redis (Optional) `_\r\n+ `Memcached (Optional) `_\r\n\r\n\r\n\r\nLICENSE\r\n=======\r\nTorndsession is licensed under MIT.\r\n\r\n\r\n\r\n\r\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/HQ1363/torndsession", "keywords": "torndsession tornado session redis memcached memory file python", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "tornaSession", "package_url": "https://pypi.org/project/tornaSession/", "platform": "", "project_url": "https://pypi.org/project/tornaSession/", "project_urls": { "Homepage": "https://github.com/HQ1363/torndsession" }, "release_url": "https://pypi.org/project/tornaSession/1.1.5.2/", "requires_dist": [ "tornado" ], "requires_python": "", "summary": "Session extensions for Tornado", "version": "1.1.5.2" }, "last_serial": 5611780, "releases": { "1.1.5.2": [ { "comment_text": "", "digests": { "md5": "9dbbe7cd106d1512ad29e2effe69edaf", "sha256": "fdb0240cd7ca6426fae64a45c8250b6c8be02ab00bb156e1f4030844d8234201" }, "downloads": -1, "filename": "tornaSession-1.1.5.2-py2-none-any.whl", "has_sig": false, "md5_digest": "9dbbe7cd106d1512ad29e2effe69edaf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13115, "upload_time": "2019-07-31T06:34:12", "url": "https://files.pythonhosted.org/packages/75/42/b9a0423aa7e6b3e9680612ccbd7aec6cffab0aa8b9e07f0117629dc55d81/tornaSession-1.1.5.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cffab4ee427c01b37c1b12807ebcd85", "sha256": "4c70e70891ba77de30dff6beb43fcd74341c09063a77fd616aef3c96e7dbf508" }, "downloads": -1, "filename": "tornaSession-1.1.5.2.tar.gz", "has_sig": false, "md5_digest": "0cffab4ee427c01b37c1b12807ebcd85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8554, "upload_time": "2019-07-31T06:34:14", "url": "https://files.pythonhosted.org/packages/e9/87/2f9f891ecc8b8658e074d7b59e5cb5cccc4be2208f6b354cfb76748df357/tornaSession-1.1.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9dbbe7cd106d1512ad29e2effe69edaf", "sha256": "fdb0240cd7ca6426fae64a45c8250b6c8be02ab00bb156e1f4030844d8234201" }, "downloads": -1, "filename": "tornaSession-1.1.5.2-py2-none-any.whl", "has_sig": false, "md5_digest": "9dbbe7cd106d1512ad29e2effe69edaf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13115, "upload_time": "2019-07-31T06:34:12", "url": "https://files.pythonhosted.org/packages/75/42/b9a0423aa7e6b3e9680612ccbd7aec6cffab0aa8b9e07f0117629dc55d81/tornaSession-1.1.5.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cffab4ee427c01b37c1b12807ebcd85", "sha256": "4c70e70891ba77de30dff6beb43fcd74341c09063a77fd616aef3c96e7dbf508" }, "downloads": -1, "filename": "tornaSession-1.1.5.2.tar.gz", "has_sig": false, "md5_digest": "0cffab4ee427c01b37c1b12807ebcd85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8554, "upload_time": "2019-07-31T06:34:14", "url": "https://files.pythonhosted.org/packages/e9/87/2f9f891ecc8b8658e074d7b59e5cb5cccc4be2208f6b354cfb76748df357/tornaSession-1.1.5.2.tar.gz" } ] }