/usr/share/doc/python-twisted-web/howto/web-overview.html is in python-twisted-web 13.2.0-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | <?xml version="1.0" encoding="utf-8"?><!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Twisted Documentation: Overview of Twisted Web</title>
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body bgcolor="white">
<h1 class="title">Overview of Twisted Web</h1>
<div class="toc"><ol><li><a href="#auto0">Introduction</a></li><li><a href="#auto1">Twisted Web's Structure</a></li><li><a href="#auto2">Resources</a></li><li><a href="#auto3">
Web programming with Twisted Web
</a></li></ol></div>
<div class="content">
<span/>
<h2>Introduction<a name="auto0"/></h2>
<p>Twisted Web is a web application server written in pure
Python, with APIs at multiple levels of abstraction to
facilitate different kinds of web programming.
</p>
<h2>Twisted Web's Structure<a name="auto1"/></h2>
<p><img src="../img/web-overview.png"/></p>
<p>When
the Web Server receives a request from a Client, it creates
a Request object and passes it on to the Resource system.
The Resource system dispatches to the appropriate Resource
object based on what path was requested by the client. The
Resource is asked to render itself, and the result is
returned to the client.</p>
<h2>Resources<a name="auto2"/></h2>
<p>Resources are the lowest-level abstraction for applications
in the Twisted web server. Each Resource is a 1:1 mapping with
a path that is requested: you can think of a Resource as a
single <q>page</q> to be rendered. The interface for making
Resources is very simple; they must have a method named
<code>render</code> which takes a single argument, which is the
Request object (an instance of <code class="API"><a href="http://twistedmatrix.com/documents/13.2.0/api/twisted.web.server.Request.html" title="twisted.web.server.Request">twisted.web.server.Request</a></code>). This render
method must return a string, which will be returned to the web
browser making the request. Alternatively, they can return a
special constant, <code class="API"><a href="http://twistedmatrix.com/documents/13.2.0/api/twisted.web.server.NOT_DONE_YET.html" title="twisted.web.server.NOT_DONE_YET">twisted.web.server.NOT_DONE_YET</a></code>, which tells
the web server not to close the connection; you must then use
<code class="python">request.write(data)</code> to render the
page, and call <code class="python">request.finish()</code>
whenever you're done.
</p>
<h2>
Web programming with Twisted Web
<a name="auto3"/></h2>
<p>
Web programmers seeking a higher level abstraction than the Resource system
should look at <a href="https://launchpad.net/nevow" shape="rect">Nevow</a>.
Nevow is based on ideas previously developed in Twisted, but is now maintained
outside of Twisted to easy development and release cycle pressures.
</p>
</div>
<p><a href="index.html">Index</a></p>
<span class="version">Version: 13.2.0</span>
</body>
</html>
|