Ich baute eine einfache Web-App mit Flask. Was dies bedeutet ist grundsätzlich Daten aus einer Form und sendet eine POST - die dann als Befehlszeilenargument an das Skript übergeben wirdAzure fehlgeschlagen Python-Skript ausführen
os.popen("python3 script.py " + postArgument).read()
Der Befehl wird in einer Variablen gespeichert, die dann auf ein Element geleitet wird, in eine neue Seite mit den Ergebnissen.
Über das Skript: Es wird mit der Zeichenfolge in der POST über eine API, bekommt einige Daten, verarbeitet sie, sendet sie an eine andere API und schließlich gibt die Ergebnisse (die in der Variablen schließlich gespeichert werden)
Es funktioniert auf einem lokalen Server. Aber Azure kann nichts zurückgeben. Die Zeichenfolge ist leer.
Wie bekomme ich einige Terminalprotokolle?
Gibt es eine Lösung?
Funktioniert das Ausführen von 'python3' nur in Ihrer Azure-VM? Gibt es einen Grund, warum Sie 'script.py' nicht als Modul in Ihrem vorhandenen Skript verwenden, anstatt einen neuen Binärprozess außerhalb Ihres bestehenden zu starten? – MatsLindh
@MatsLindh Sorry für mein Unverständnis. Warum behandeln Sie nicht die Post-Daten mit Flask, wenn es aus einem Formular über HTTP-Post-Anfrage kommt? –
@ PeterPan-MSFT Die POST-Daten werden von Flask verarbeitet. Der Punkt ist, wie bekomme ich die Ausgabe des Skripts zurück auf die Webseite –