Skip to content

server

Routes HTTP Server.

Attributes

mlogger = get_logger(__name__) module-attribute

REQUEST_HNDLR = handler.RequestHandler() module-attribute

EVENT_HNDLR = UI.ExternalEvent.Create(REQUEST_HNDLR) module-attribute

Classes

HttpRequestHandler

Bases: BaseHTTPRequestHandler

HTTP Requests Handler.

Functions

do_POST()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_POST(self):
    self._process_request(method='POST')
do_GET()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_GET(self):
    self._process_request(method='GET')
do_PUT()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_PUT(self):
    self._process_request(method='PUT')
do_DELETE()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_DELETE(self):
    self._process_request(method='DELETE')
do_HEAD()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_HEAD(self):
    self._process_request(method='HEAD')
do_CONNECT()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_CONNECT(self):
    self._process_request(method='CONNECT')
do_OPTIONS()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_OPTIONS(self):
    self._process_request(method='OPTIONS')
do_TRACE()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_TRACE(self):
    self._process_request(method='TRACE')
do_PATCH()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def do_PATCH(self):
    self._process_request(method='PATCH')

ThreadedHttpServer

Bases: ThreadingMixIn, HTTPServer

Threaded HTTP server.

Attributes

allow_reuse_address = True class-attribute instance-attribute

Functions

shutdown()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def shutdown(self):
    self.socket.close()
    HTTPServer.shutdown(self)

RoutesServer(host, port)

Bases: object

Route server thread handler.

It runs an HTTP server on the given host and port.

Parameters:

Name Type Description Default
host str

host

required
port int

port

required
Source code in pyrevitlib/pyrevit/routes/server/server.py
def __init__(self, host, port):
    self.server = ThreadedHttpServer((host, port), HttpRequestHandler)
    self.host = host
    self.port = port
    self.start()

Attributes

server = ThreadedHttpServer((host, port), HttpRequestHandler) instance-attribute
host = host instance-attribute
port = port instance-attribute

Functions

start()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def start(self):
    self.server_thread = threading.Thread(target=self.server.serve_forever)
    self.server_thread.daemon = True
    self.server_thread.start()
waitForThread()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def waitForThread(self):
    self.server_thread.join()
stop()
Source code in pyrevitlib/pyrevit/routes/server/server.py
def stop(self):
    self.server.shutdown()
    self.waitForThread()

Functions