uruchomić prostą aplikację kolbą tak:Jak złapać wyjątek w ten sposób na 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)
gdy uruchamiam go i odwiedzić go, czasami (nie zawsze) to could't odpowiedzi jako żądanie i rzucać wyjątkiem:
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]
Nie rozumiem, co to za wina? i jak mogę to rozwiązać?
i jak mogę użyć try except
, aby go złapać?
I nie sądzę, że odpowiedź jest poprawna, ponieważ 54481 port to port żądanie (tj. z przeglądarki internetowej). – HolgerSchurig
Ale domyślnie w kolbie jest używany port 5000: https://github.com/mitsuhiko/flask/blob/master/flask/app.py#L766. W twoim przykładzie Twoja aplikacja nie powinna działać z portem 54481 dla serwera dev. – tbicr
FWIW, natknąłem się na ten sam problem, używam niestandardowego portu i mam wyłączone debugowanie. Myślę, że sugerowanie innego portu to czerwony śledzia. –