本文整理匯總了Python中wsgiref.simple_server.WSGIRequestHandler.log_request方法的典型用法代碼示例。如果您正苦於以下問題:Python WSGIRequestHandler.log_request方法的具體用法?Python WSGIRequestHandler.log_request怎麽用?Python WSGIRequestHandler.log_request使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類wsgiref.simple_server.WSGIRequestHandler
的用法示例。
在下文中一共展示了WSGIRequestHandler.log_request方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: run
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def run(self, app): # pragma: no cover
from wsgiref.simple_server import WSGIRequestHandler, WSGIServer
from wsgiref.simple_server import make_server
import socket
class FixedHandler(WSGIRequestHandler):
def address_string(self): # Prevent reverse DNS lookups please.
return self.client_address[0]
def log_request(*args, **kw):
if not self.quiet:
return WSGIRequestHandler.log_request(*args, **kw)
handler_cls = self.options.get('handler_class', FixedHandler)
server_cls = self.options.get('server_class', WSGIServer)
if ':' in self.host: # Fix wsgiref for IPv6 addresses.
if getattr(server_cls, 'address_family') == socket.AF_INET:
class server_cls(server_cls):
address_family = socket.AF_INET6
srv = make_server(self.host, self.port, app, server_cls, handler_cls)
srv.serve_forever()
示例2: run
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def run(self, app):
from wsgiref.simple_server import WSGIRequestHandler, WSGIServer
from wsgiref.simple_server import make_server
class FixedHandler(WSGIRequestHandler):
def address_string(self):
return self.client_address[0]
parent = self
def log_request(self, *args, **kw):
if not self.parent.quiet:
return WSGIRequestHandler.log_request(self, *args, **kw)
handler_cls = self.options.get('handler_class', FixedHandler)
server_cls = self.options.get('server_class', WSGIServer)
self.srv = make_server(self.host, self.port, app, server_cls, handler_cls)
thread = Thread(target=self.srv.serve_forever)
thread.daemon = True
thread.start()
self._thread = thread
self.srv.wait = self.wait
return self.srv
示例3: run
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def run(self, app): # pragma: no cover
from wsgiref.simple_server import make_server
from wsgiref.simple_server import WSGIRequestHandler, WSGIServer
import socket
class FixedHandler(WSGIRequestHandler):
def address_string(self): # Prevent reverse DNS lookups please.
return self.client_address[0]
def log_request(*args, **kw):
if not self.quiet:
return WSGIRequestHandler.log_request(*args, **kw)
handler_cls = self.options.get('handler_class', FixedHandler)
server_cls = self.options.get('server_class', WSGIServer)
if ':' in self.host: # Fix wsgiref for IPv6 addresses.
if getattr(server_cls, 'address_family') == socket.AF_INET:
class server_cls(server_cls):
address_family = socket.AF_INET6
self.srv = make_server(self.host, self.port, app, server_cls,
handler_cls)
self.port = self.srv.server_port # update port actual port (0 means random)
try:
self.srv.serve_forever()
except KeyboardInterrupt:
self.srv.server_close() # Prevent ResourceWarning: unclosed socket
raise
示例4: run
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def run(self, app): # pragma: no cover
from wsgiref.simple_server import make_server
from wsgiref.simple_server import WSGIRequestHandler, WSGIServer
import socket
class FixedHandler(WSGIRequestHandler):
def address_string(self): # Prevent reverse DNS lookups please.
return self.client_address[0]
def log_request(*args, **kw):
if not self.quiet:
return WSGIRequestHandler.log_request(*args, **kw)
handler_cls = self.options.get('handler_class', FixedHandler)
server_cls = self.options.get('server_class', WSGIServer)
if ':' in self.host: # Fix wsgiref for IPv6 addresses.
if getattr(server_cls, 'address_family') == socket.AF_INET:
class server_cls(server_cls):
address_family = socket.AF_INET6
self.srv = make_server(self.host, self.port, app, server_cls, handler_cls)
self.port = self.srv.server_port # update port actual port (0 means random)
try:
self.srv.serve_forever()
except KeyboardInterrupt:
self.srv.server_close() # Prevent ResourceWarning: unclosed socket
raise
示例5: log_request
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def log_request(method):
"""Decorator for a method to add its request to the request log."""
@wraps(method)
def logged_method(self, *args, **kwargs):
skip_log = kwargs.pop('skip_log', False)
if not skip_log:
self.append_to_request_log()
return method(self, *args, **kwargs)
return logged_method
示例6: _start_server
# 需要導入模塊: from wsgiref.simple_server import WSGIRequestHandler [as 別名]
# 或者: from wsgiref.simple_server.WSGIRequestHandler import log_request [as 別名]
def _start_server(self):
proxy = self
class BottleServerAdapter(bottle.ServerAdapter):
def run(self, app):
class Server(WSGIServer):
allow_reuse_address = True
def handle_error(self, request, client_address):
pass
class Handler(WSGIRequestHandler):
def address_string(self):
return self.client_address[0]
def log_request(*args, **kwargs):
if not self.quiet:
return WSGIRequestHandler.log_request(
*args, **kwargs)
self.srv = make_wsgi_server(
self.host,
self.port,
app,
Server,
Handler)
proxy.server = self.srv
self.port = self.srv.server_port
proxy._started.put(True)
self.srv.serve_forever(poll_interval=0.1)
bottle.post('/', callback=self._request_handler)
def serve():
bottle.run(
host='localhost',
port=self.port,
quiet=True,
server=BottleServerAdapter)
thread = threading.Thread(target=serve)
thread.daemon = True
thread.start()
return thread