Basic JSON response.
1.1 --- a/client/scripts/client.js Thu Oct 06 02:05:43 2011 +0200
1.2 +++ b/client/scripts/client.js Sat Oct 08 01:05:50 2011 +0200
1.3 @@ -1,5 +1,5 @@
1.4 //--allow-file-access-from-files
1.5 -var server = "http://localhost:8080";
1.6 +var server = "http://127.0.0.1:8080";
1.7 var view_left = "<view-left><h2>Machine</h2><p>Be yourself within Machine.</p></view-left>";
1.8
1.9 function command()
1.10 @@ -7,14 +7,14 @@
1.11 var com = document.getElementById("com");
1.12 $.ajax({url: server + "/com",
1.13 data: com.value,
1.14 + dataType: "json",
1.15 success: callback});
1.16 com.value = "";
1.17 }
1.18
1.19 -function callback(msg)
1.20 +function callback(data, status, xhr)
1.21 {
1.22 - alert(msg);
1.23 - view_left = "<view-left><h2>Machine</h2><p>" + msg.time + "</p></view-left>";
1.24 + view_left = "<view-left><h2>Machine</h2><p>" + data.time + "</p></view-left>";
1.25 $("view-left").replaceWith(view_left);
1.26 }
1.27
2.1 --- a/server/server.py Thu Oct 06 02:05:43 2011 +0200
2.2 +++ b/server/server.py Sat Oct 08 01:05:50 2011 +0200
2.3 @@ -9,10 +9,10 @@
2.4 return parser.parse_args()
2.5
2.6 def main():
2.7 - args = parse_args()
2.8 - port = args.port
2.9 - server = Server("localhost", port, GetHandler)
2.10 - server.run()
2.11 + args = parse_args()
2.12 + port = args.port
2.13 + server = Server("localhost", port, GetHandler)
2.14 + server.run()
2.15
2.16 from BaseHTTPServer import BaseHTTPRequestHandler
2.17 from BaseHTTPServer import HTTPServer
2.18 @@ -20,24 +20,41 @@
2.19 import urlparse
2.20
2.21 class GetHandler(BaseHTTPRequestHandler):
2.22 - def do_GET(self):
2.23 - parsed_path = urlparse.urlparse(self.path)
2.24 - message = '\n'.join(("client: %s:%i" % self.client_address,
2.25 - "path: %s" % parsed_path.path,
2.26 - "query: %s" % parsed_path.query,
2.27 - "params: %s" % parsed_path.params))
2.28 - self.send_response(200)
2.29 - self.send_header("Content-type", "application/json")
2.30 - self.end_headers()
2.31 - self.wfile.write("{\"time:\": 73}")
2.32 + def do_GET(self):
2.33 + if self.path == "/":
2.34 + self.path = "/machine.html"
2.35 +
2.36 + parsed_path = urlparse.urlparse(self.path)
2.37 + message = '\n'.join(("client: %s:%i" % self.client_address,
2.38 + "path: %s" % parsed_path.path,
2.39 + "query: %s" % parsed_path.query,
2.40 + "params: %s" % parsed_path.params))
2.41 + self.send_response(200)
2.42 +
2.43 + resource = True
2.44 + if parsed_path.path.endswith(".html"):
2.45 + self.send_header("Content-type", "text/html")
2.46 + elif parsed_path.path.endswith(".css"):
2.47 + self.send_header("Content-type", "text/css")
2.48 + elif parsed_path.path.endswith(".js"):
2.49 + self.send_header("Content-type", "application/javascript")
2.50 + else:
2.51 + self.send_header("Content-type", "application/json")
2.52 + resource = False
2.53 + self.end_headers()
2.54 +
2.55 + if resource:
2.56 + self.wfile.write(open("../client" + parsed_path.path).read())
2.57 + else:
2.58 + self.wfile.write("{\"time\": 73}")
2.59
2.60 class Server(HTTPServer):
2.61 - def __init__(self, host, port, handler):
2.62 - HTTPServer.__init__(self, (host, port), handler)
2.63 - self.host = host
2.64 - self.port = port
2.65 - def run(self):
2.66 - self.serve_forever()
2.67 + def __init__(self, host, port, handler):
2.68 + HTTPServer.__init__(self, (host, port), handler)
2.69 + self.host = host
2.70 + self.port = port
2.71 + def run(self):
2.72 + self.serve_forever()
2.73
2.74 if __name__ == "__main__":
2.75 main()