0
私はシェルスクリプトを実行しているレスポンスオブジェクトを返すことでライブ出力を表示しているWebアプリケーションで作業しています。シェルスクリプトの実行が終了したら別のページにリダイレクトする方法はありますか?Flask:Flaskレスポンスオブジェクトを返すとリダイレクト
@app.route("/setup", methods=['POST', 'GET'])
def setup():
def inner():
command = ["./test.bash", "exam"]
proc = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)
for line in iter(proc.stdout.readline,''):
yield line.rstrip() + '<br/>\n'
return Response(inner(), mimetype='text/html')
# After this I want to redirect to another page say success.html
かの方法がある場合、私は、Responseオブジェクト内のテンプレートを含めることができ、私は私がしたいページに移動するためにいくつかのボタンを含めることができます。
私も何かやりたい:
for line in iter(proc.stdout.readline,''):
if line == "Success":
# Redirect to success.html after returning Response object with script output
else:
# Redirect to error.html after returning Response object with script
出力
これは可能ですか? 何か助けていただければ幸いです。前もって感謝します。
HTMLページを返すか、別のページにリダイレクトできます。両方を実行しようとすると、ユーザーは即時リダイレクトのために元のHTMLを見ることができなくなります。 –
連続したスクリプトを実行し、そのページからライブ出力を取得したいのですか? –
@AndrewCherevatkin:私はスクリプトからライブ出力を得ることができます。しかし、スクリプトが実行されると、私はいくつかのページにリダイレクトしたい。 –