sawine@7
|
1 |
#!/usr/bin/python
|
sawine@7
|
2 |
|
sawine@7
|
3 |
from argparse import ArgumentParser
|
sawine@7
|
4 |
|
sawine@7
|
5 |
def parse_args():
|
sawine@7
|
6 |
parser = ArgumentParser(description="")
|
sawine@7
|
7 |
parser.add_argument("port", type=int, help="port")
|
sawine@7
|
8 |
parser.add_argument("-a", help="host address")
|
sawine@7
|
9 |
return parser.parse_args()
|
sawine@7
|
10 |
|
sawine@7
|
11 |
def main():
|
sawine@7
|
12 |
args = parse_args()
|
sawine@7
|
13 |
port = args.port
|
sawine@7
|
14 |
server = Server("localhost", port, GetHandler)
|
sawine@7
|
15 |
server.run()
|
sawine@7
|
16 |
|
sawine@7
|
17 |
from BaseHTTPServer import BaseHTTPRequestHandler
|
sawine@7
|
18 |
from BaseHTTPServer import HTTPServer
|
sawine@7
|
19 |
import SocketServer
|
sawine@7
|
20 |
import urlparse
|
sawine@7
|
21 |
|
sawine@7
|
22 |
class GetHandler(BaseHTTPRequestHandler):
|
sawine@7
|
23 |
def do_GET(self):
|
sawine@7
|
24 |
parsed_path = urlparse.urlparse(self.path)
|
sawine@7
|
25 |
message = '\n'.join(("client: %s:%i" % self.client_address,
|
sawine@7
|
26 |
"path: %s" % parsed_path.path,
|
sawine@7
|
27 |
"query: %s" % parsed_path.query,
|
sawine@7
|
28 |
"params: %s" % parsed_path.params))
|
sawine@7
|
29 |
self.send_response(200)
|
sawine@8
|
30 |
self.send_header("Content-type", "application/json")
|
sawine@7
|
31 |
self.end_headers()
|
sawine@8
|
32 |
self.wfile.write("{\"time:\": 73}")
|
sawine@7
|
33 |
|
sawine@7
|
34 |
class Server(HTTPServer):
|
sawine@7
|
35 |
def __init__(self, host, port, handler):
|
sawine@7
|
36 |
HTTPServer.__init__(self, (host, port), handler)
|
sawine@7
|
37 |
self.host = host
|
sawine@7
|
38 |
self.port = port
|
sawine@7
|
39 |
def run(self):
|
sawine@7
|
40 |
self.serve_forever()
|
sawine@7
|
41 |
|
sawine@7
|
42 |
if __name__ == "__main__":
|
sawine@7
|
43 |
main()
|
sawine@7
|
44 |
|