root/cherokee-pyscgi/tests/test2_post.py

Revision 1325, 1.2 kB (checked in by alo, 9 months ago)

--

  • Property svn:executable set to
Line 
1 #!/usr/bin/env python
2
3 from pyscgi import SCGIHandler, ServerFactory
4
5 DEFAULT_PORT = 4000
6 POST_EXAMPLE = """
7 <form method="post">
8   <table border="0">
9     <tr><td>Name</td>   <td><input name="name">   </td></tr>
10     <tr><td>Surname</td><td><input name="surname"></td></tr>
11     <tr><td>Server</td> <td><select name="server">
12       <option value="cherokee1">Cherokee stable
13       <option value="cherokee2">Cherokee devel
14       </server></td></tr>
15   </table>
16   <input type="submit" value="Submit">
17 </form>
18 """
19
20 class MyHandler(SCGIHandler):
21     def __init__ (self, request, client_address, server):
22         SCGIHandler.__init__ (self, request, client_address, server)
23
24     def handle_request (self):
25         self.send('Content-Type: text/html\r\n\r\n')
26         self.send('<h1>Post test</h1>')
27
28         self.handle_post()
29
30         if self.post:
31             length = len(self.post)
32             if length > 0:
33                 self.send('Post len: %d <br/>'     % (length))
34                 self.send('Post content: %s <br/>' % (self.post))
35                 return
36         self.send(POST_EXAMPLE)
37
38 def main():
39     srv = ServerFactory(handler_class=MyHandler, port=DEFAULT_PORT)
40     srv.serve_forever()
41
42 if __name__ == "__main__":
43     main()
Note: See TracBrowser for help on using the browser.