J'ai un serveur flask (app1) dans le fichier1: depuis l'importation du flacon Flask app1 = Flask (__ name__) @ app1.route ('/', methods = ['POST']): retournez "Hello!" si __nom__ == '__main__': app1.run (port = ...

-1
Gal Shahar 17 mars 2021 à 02:56

1 réponse

Meilleure réponse

OK, je peux vous dire comment contourner ce problème. Si vous regardez le traçage, flask appelle un package appelé werkzeug pour faire le travail. werkzeug met une note dans l'environnement quand il doit créer une socket, vraisemblablement pour pouvoir simplement réutiliser cette socket dans des fourches. Dans votre cas, le deuxième processus hérite de cet environnement, donc il pense qu'un fd existe déjà et essaie de le réutiliser, mais le fd n'existe pas dans ce processus.

La solution laide qui devrait fonctionner est d'ajouter ceci dans votre deuxième script avant de démarrer le port 8080 (ou 2226, basé sur le suivi d'origine;):

    del os.environ["WERKZEUG_SERVER_FD"]
1
davidism 17 mars 2021 à 00:35