Examples

twisted.web.client

  • httpclient.py - use twisted.web.client.Agent to download a web page.

  • (deprecated) getpage.py - use twisted.web.client.getPage to download a web page.

  • (deprecated) dlpage.py - add callbacks to twisted.web.client.downloadPage to display errors that occur when downloading a web page

XML-RPC

  • xmlrpcserver.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

  • xmlrpc-debug.py - use xmlrpc.Proxy’s queryFactory to debug raw XML-RPC traffic

  • 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 - use twisted.web.static to create a static resource to serve

  • fortune.rpy - create a resource that returns the output of a process run on the server

  • report.rpy - display various properties of a resource, including path, host, and port

  • users.rpy - 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