ホームページ >バックエンド開発 >Python チュートリアル >データを Flask から JavaScript に渡すときに JSON 構文エラーを回避するにはどうすればよいですか?

データを Flask から JavaScript に渡すときに JSON 構文エラーを回避するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-28 01:08:09213ブラウズ

How to Avoid JSON Syntax Errors When Passing Data from Flask to JavaScript?

Flask から JavaScript へのデータの受け渡し: JSON 構文エラーの処理

Flask ルートから Jinja テンプレートに JSON データを渡そうとした場合、レンダリングされたデータに対して JSON.parse を呼び出すときに SyntaxError が発生する可能性があります。このエラーは通常、レンダリング中に JSON 文字がエスケープされるときに発生します。

この問題に対処するために、Flask は tojson フィルターを提供します。データに適用すると、Python オブジェクトが自動的に JSON にダンプされ、レンダリングしても安全であるとマークされます。

例を次に示します:

return render_template('tree.html', tree=tree)
<script>
    var tree = {{ tree|tojson }};
</script>

特殊な場合のフィルター

JSON がすでに文字列にダンプされている場合は、 安全 フィルターするか、レンダリング前に文字列を マークアップ でラップします。

return render_template('tree.html', tree=json.dumps(tree))
<script>
    var tree = {{ tree|safe }};
</script>

Jinja 使用法の代替アプローチ

データを JavaScript に渡さずに Jinja で直接操作している場合は、次の必要はありません。 JSON。 tojson.

return render_template('tree.html', tree=tree)
を呼び出さずに、実際の Python データを渡すだけです。

以上がデータを Flask から JavaScript に渡すときに JSON 構文エラーを回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。