フラスコを使用してアプリを構築します。アプリはテーブル構造を使用してデータを表示します。その機能の一部は、ユーザーが指定したテーブル行からデータを収集することです。これを行うために、いくつかのjsを実行するボタンを各行に配置しました。 jsは行から情報を収集し、JSON.stringify()を使用してjsonオブジェクトに変換し、関連するflask urlへの投稿要求を発行します。
Json化されたオブジェクトの値をjsファイルからブラウザーコンソールに記録すると、正しく形成されていることがわかります。ポストリクエストは正しいルートにアクセスしますが、request.get_json()関数はそのルートのメソッドで値Noneを返します。
テスト用にflaskで個別のルートを設定しました。関連するコードは次のとおりです
javaScriptから
function do_some_work(e) {
var row_data = get_table_row_data(e);
row_data = JSON.stringify(row_data);
console.log(row_data);
$.post("test", row_data);
}
get_table_row_data()は、単にキーと値のペアを持つオブジェクトを返します。ログは、データが正しくフォーマットされたJSONであることを示しています。
そして、ここにpythonコード
#TODO
@application.route('/test', methods=['GET', 'POST'])
def test():
data = request.get_json()
print("data is "+format(data))
return redirect(url_for('index'))
ここで、データはNoneとして表示されます
助けていただければ幸いです
_request.json
_で、JSONデータの辞書を返します。値を取得するには、request.json.get('value_name')
を使用します。あなたのルートはこのようになります
_#TODO
@application.route('/test', methods=['GET', 'POST'])
def test():
data = request.json
print("data is " + format(data))
return redirect(url_for('index'))
_