###質問
Pythonを用いて、HTTPリクエストでPOSTされてきたメッセージをテキストファイルなどに書き込み、それをブラウザから開けるようにしたいです。
ファイルに書き込むことはできていると思いますが、それをブラウザで開くことができません
ソースコードは以下の通りです
受け取ったメッセージを変数messageに代入し、それをMessage.txtに書き込むという処理のつもりです。
Message.txtはあらかじめstaticフォルダーの中に作成しており、ある程度の文章も書き込まれています。
ログを見ると、messageは確かに受け取れており、テキストファイルにも記入されているようです。(下から8行目からのfor文でprintすると表示されてます。)
しかし、'http://(サーバーのURL)/Message.txt'にアクセスすると記入した文字は表示されません。(staticフォルダー内のMessage.txtにあらかじめ書いてある文章のみが表示されます。)
callback()でopenしているMessage.txtはいったいどこにあるファイルなのでしょうか?
環境は、Python2.7,flask=0.11を使用し、herokuでサーバーを構築しています
Python
1# -*- coding: utf-8 -*- 2 3from __future__ import unicode_literals 4from flask import Flask, render_template, request, abort 5 6app = Flask(__name__, static_folder="static", static_url_path='') 7 8@app.route("/") 9def index(): 10 return render_template('test.html') 11 12@app.route("/callback", methods=['GET', 'POST']) 13def callback(): 14 15 ~~~~~受け取ったメッセージを変数messageに代入~~~~~~~ 16 17 f = open('Message.txt', "a") 18 f.write(message.encode('utf-8')) 19 f = open('Message.txt', "r") 20 for row in f: 21 print row 22 print "Text End" 23 f.close() 24 25 return message.encode('utf-8') 26 27if __name__ == "__main__": 28 app.run(host = '0.0.0.0')
回答1件
あなたの回答
tips
プレビュー