6.3 HTTP Client Server
Connecting External HTTP Clients
Real HTTP Server
HTTP Server
from realhttp import *from time import *
def get_contacts( context, request, reply ):  print(  "gc: " + request.url() + " @ " + request.ip() )  reply.setContent("contacts...")  reply.setStatus(200)  reply.end()
def get_hello( context, request, reply ):  print(  "gc: " + request.url() + " @ " + request.ip() )  reply.setContent("Hello World")  reply.setStatus(200)  reply.end()
def post_data( context, request, reply ):  print(  "pd: " + request.url() + " @ " + request.ip() )  reply.setContent("posted data ...")  reply.setStatus(200)  reply.end()
def get_services( context, request, reply ):  print(  "rs: " + request.url() + " @ " + request.ip() )  reply.setContent("services...")  reply.setStatus(200)  reply.end()
def default_posts( context, request, reply ):  print(  "dp: " + request.url() + " @ " + request.ip() )  reply.setContent("posted content ignored...")  reply.setStatus(200)  reply.end()
def default_gets( context, request, reply ):  print(  "dg: " + request.url() + " @ " + request.ip() )  url = request.url()  if '/' in url and '.' in url:    reply.sendFile(url)  else:    reply.sendNotFound()
def main():  server = RealHTTPServer()  print( "Server started: %s"%( server.start(8765) ) )  print( "Server listening: %s"%( server.isListening() ) )  server.route("/hello/*", ["GET"], get_hello)  server.route("/contacts/*", ["GET"], get_contacts)  server.route("/services/*", ["GET"], get_services)  server.route("/data/*", ["POST"], post_data)  server.route("*", ["POST"], default_posts)  server.route("*", ["GET"], default_gets)
  # don't let it finish  while True:    sleep(3600)
if __name__ == "__main__":  main()Once the server is started, Open the web browser your PC and type
http://127.0.0.1:8765/hello/ 
 