Examples

twisted.web.client

  • getpage.py - use twisted.web.client.getPage to download a web page.
  • dlpage.py - add callbacks to twisted.web.client.downloadPage to display errors that occur when downloading a web page

XML-RPC

  • xmlrpc.py XML-RPC server with several methods, including echoing, faulting, returning deferreds and failed deferreds
  • xmlrpcclient.py - use twisted.web.xmlrpc.Proxy to call remote XML-RPC methods
  • advogato.py - use twisted.web.xmlrpc to post a diary entry to advogato.org; requires an advogato account

Virtual hosts and proxies

  • proxy.py - use twisted.web.proxy.Proxy to make the simplest proxy
  • logging-proxy.py - example of subclassing the core classes of twisted.web.proxy to log requests through a proxy
  • reverse-proxy.py - use twisted.web.proxy.ReverseProxyResource to make any HTTP request to the proxy port get applied to a specified website
  • rootscript.py - example use of twisted.web.vhost.NameVirtualHost
  • web.py - an example of both using the processors attribute to set how certain file types are treated and using twisted.web.vhost.VHostMonsterResource to reverse proxy

.rpys and ResourceTemplate

  • hello.rpy.py - use twisted.web.static to create a static resource to serve
  • fortune.rpy.py - create a resource that returns the output of a process run on the server
  • report.rpy.py - display various properties of a resource, including path, host, and port
  • users.rpy.py - use twisted.web.distrib to publish user directories as for a “community web site”
  • simple.rtl - example use of twisted.web.resource.ResourceTemplate

Miscellaneous

  • webguard.py - pairing twisted.web with twisted.cred to guard resources against unauthenticated users
  • silly-web.py - bare-bones distributed web setup with a master and slave using twisted.web.distrib and twisted.spread.pb
  • soap.py - use twisted.web.soap to publish SOAP methods