A Twisted Web REST micro-framework
Project description
Based on Flask API, with integrated multiprocessing support for full usage of all CPUs. Provides a more Flask/Sinatra-style API on top of the core twisted.web APIs. Integrates FormEncode for path, form and query argument validation.
The simplest possible twisted.web CorePost REST application:
from corepost.web import CorePost, route from corepost.enums import Http class RestApp(CorePost): @route("/",Http.GET) def root(self,request,**kwargs): return request.path @route("/test",Http.GET) def test(self,request,**kwargs): return request.path @route("/test/<int:numericid>",Http.GET) def test_get_resources(self,request,numericid,**kwargs): return "%s" % numericid if __name__ == '__main__': app = RestApp() app.run()
Links
Changelog
- 0.0.8:
support for serializing of classes to JSON,XML,YAML based on caller’s Accept header
separate routing functionality from CorePost Resource object, in preparation for future multicore support
- 0.0.7:
automatic parsing of incoming content (JSON, YAML, XML)
routing by incoming content type
automatic response conversion based on caller’s Accept header (JSON/YAML
support for defer.returnValue() in @inlineCallbacks route methods
0.0.6 - redesigned API around classes and methods, rather than functions and global objects (after feedback from Twisted devs)
0.0.5 - added FormEncode validation for arguments
0.0.4 - path argument extraction, mandatory argument error checking
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.