javascript - jqueryから送信されたjsonデータをflaskから受け入れるにはどうすればよいですか?
漂亮男人
漂亮男人 2017-05-18 11:01:48
0
3
651

フラスコ アプリはフロント エンドから json データを受け入れますが、フラスコ リクエストはそれを正常に受け入れません。データが含まれておらず、多くの関数を変更した後でも機能しません。
jsコード

リーリー

フラスコ内の関数を表示:

リーリー

request.json が存在するかどうかのみを判断しますが、返される文字列は常に "error" です。 request.json には常に null が含まれます。その後、request.args.get()を変更しましたが、これも機能しませんでした。どこが間違っていたのでしょうか? アドバイスを心よりお願いいたします。

漂亮男人
漂亮男人

全員に返信(3)
小葫芦

答えを見つけました。それは単にjquery部分の問題でした。 $.ajax のパラメータ contentType のデフォルトは「application/x-www-form-urlencoded」です。このパラメータを application/json に設定する必要があります。

リーリー

参考: https://flask.readthedocs.io/...
http://stackoverflow.com/ques...

いいねを押す +0
Peter_Zhu

jqueryのajaxはデータ送信時にJSON.stringifyを必要とせず、自動的に処理されます。

いいねを押す +0
迷茫

あなたの説明によれば、問題が見つかったので、引き続き試してみるか、ドキュメントを読んでみてはいかがでしょうか

リーリー

結果を出力する

リーリー

request.json は非常に奇妙ですが、実際にはデータがありませんが、ここで役に立たない理由は次のとおりです。

json MIME タイプが application/json の場合、これには解析された

JSON データが含まれます。それ以外の場合は、代わりに get_json() メソッドを使用する必要があります。
しかし、get_json() を使用すると、容赦なく AttributeError が報告されます。 : 「Request」オブジェクトには属性「get_json」がありません

したがって、request.json は一度だけ使用して成功しましたが、再度成功することはありませんでした。これは魔法のようなものなので、request.json の代替手段を見つけられたら、お願いします。
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート