def handler_501(request, response):
    # Just show logs related ot port 8181 as mention in question
    logs = filter(lambda log: log.client_port == 8181, ServerRequestLogger.logs())
    return '''
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
    <head>
        <title>Method Not allowed</title>
    </head>
    <body>
        <h1>Method Not allowed</h1>
        <p>The requested <b>{request.method}</b> for {request.path} was not allowed on this server.</p>
        <hr>
        {log}
        <hr>
        <address>Ocean/0.1.1</address>
    </body>
</html>
    '''.format(request=request, log=get_clients_html(request, response))
Esempio n. 2
0
def handler_501(request, response):
    # Just show logs related ot port 8181 as mention in question
    logs = filter(lambda log: log.client_port == 8181,
                  ServerRequestLogger.logs())
    return '''
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
    <head>
        <title>Method Not allowed</title>
    </head>
    <body>
        <h1>Method Not allowed</h1>
        <p>The requested <b>{request.method}</b> for {request.path} was not allowed on this server.</p>
        <hr>
        {log}
        <hr>
        <address>Ocean/0.1.1</address>
    </body>
</html>
    '''.format(request=request, log=get_clients_html(request, response))
Esempio n. 3
0
def show_clients(request, response):
    return get_clients_html(request, response, ServerRequestLogger.logs())
def show_clients(request, response):
    return get_clients_html(request, response, ServerRequestLogger.logs())
from http.http_response import HTTPResponse
from http.request_builder import process_http_message
from http.routing.router import has_error_handler, error_handler, get_error_handler
from http_server.server_requests_logger import ServerRequestLogger

__author__ = 'Hossein Zolfi <*****@*****.**>'

def handle_user_request(message, *args, **kwargs):
    request = HTTPRequest()
    try:
        process_http_message(request, message, *args, **kwargs)
        response = handle_http_request(request)
    except HttpExceptionBase, e:
        response = handle_http_exception(request, e)

    ServerRequestLogger.log(request, response)
    return handle_response(response)

def handle_response(response):
    return handle_http_response(response)


def handle_http_response(response):
    io = StringIO.StringIO()
    print >>io, 'HTTP/1.1 %d %s' %(response.status, response.code)
    print >>io, 'Content-Type: %s' %(response.content_type,)
    print >>io, 'Content-Length: %d' %(response.content_length,)
    print >>io, 'Server: Ocean/0.1.1'
    print >>io, ''
    io.write(response.content)