62 lines
1.6 KiB
Python
62 lines
1.6 KiB
Python
#! /usr/bin/env python
|
|
# -*- coding: cp1252 -*-
|
|
# Copyright (c) 2015 Andreas
|
|
# See LICENSE for details.
|
|
|
|
""" prgag.fibusrv """
|
|
|
|
from __future__ import absolute_import
|
|
from __future__ import division
|
|
from __future__ import print_function
|
|
from __future__ import unicode_literals
|
|
import SocketServer
|
|
|
|
RESPONSE = """
|
|
HTTP/1.1 200 OK
|
|
Content-Type: text/html
|
|
|
|
<html>
|
|
<head>
|
|
<meta content="text/html; charset=ISO-8859-1"
|
|
http-equiv="content-type">
|
|
<title></title>
|
|
</head>
|
|
<body>
|
|
<form name="fibo">
|
|
<input type="text" name="Limit" value="100">
|
|
<input type="submit" value="Fibo"></input><br>
|
|
<br>
|
|
</form>
|
|
</body>
|
|
</html>
|
|
"""
|
|
|
|
|
|
class MyTCPHandler(SocketServer.BaseRequestHandler):
|
|
"""
|
|
The RequestHandler class for our server.
|
|
|
|
It is instantiated once per connection to the server, and must
|
|
override the handle() method to implement communication to the
|
|
client.
|
|
"""
|
|
|
|
def handle(self):
|
|
# self.request is the TCP socket connected to the client
|
|
self.data = self.request.recv(1024).strip()
|
|
print("{} wrote:".format(self.client_address[0]))
|
|
print(self.data)
|
|
print("---")
|
|
# just send back the same data, but upper-cased
|
|
# self.request.sendall(self.data.upper())
|
|
self.request.sendall(RESPONSE)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
HOST, PORT = "localhost", 8080
|
|
# Create the server, binding to localhost on port 9999
|
|
server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
|
|
# Activate the server; this will keep running until you
|
|
# interrupt the program with Ctrl-C
|
|
server.serve_forever()
|