Ho eseguito una semplice applicazione pallone come questo:Come catturare un'eccezione come questa su Flask?
from flask import Flask
app = Flask(__name__)
@app.route('/')
def welcome():
return "OK"
app.config.update(
DEBUG = True
)
if __name__ == '__main__':
app.run(use_reloader = False)
quando l'eseguo e visitare, a volte (non sempre) si could't risposta la richiesta e lanciare un eccezione:
Exception happened during processing of request from ('127.0.0.1', 54481)
Traceback (most recent call last):
File "c:\python27\Lib\SocketServer.py", line 295, in _handle_request_noblock
self.process_request(request, client_address)
File "c:\python27\Lib\SocketServer.py", line 321, in process_request
self.finish_request(request, client_address)
File "c:\python27\Lib\SocketServer.py", line 334, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "c:\python27\Lib\SocketServer.py", line 651, in __init__
self.finish()
File "c:\python27\Lib\SocketServer.py", line 710, in finish
self.wfile.close()
File "c:\python27\Lib\socket.py", line 279, in close
self.flush()
File "c:\python27\Lib\socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 10053]
Non riesco a capire quale causa questa colpa? e come posso risolverlo?
e come posso utilizzare lo try except
per catturarlo?
non credo che la vostra risposta è corretta, perché la porta è 54481 il porto di la richiesta (cioè dal browser web). – HolgerSchurig
Tuttavia, per impostazione predefinita, utilizzare la porta 5000: https://github.com/mitsuhiko/flask/blob/master/flask/app.py#L766. Nel tuo esempio la tua app non dovrebbe funzionare con la porta 54481 per il server di sviluppo. – tbicr
FWIW, ho incontrato lo stesso problema, utilizzo una porta personalizzata e ho il debug disattivato. Penso che suggerire un porto diverso sia un'aringa rossa. –