18

クライアントから Ajax によって転送された JSON からデータを取得する必要があります。基本的に私は次のようなものを使用しました:

@route('/ajax')
def serve_ajax():
    return main.parse_request(json.dumps(dict(request.GET)))

main.parse_request は関数であり、JSON の変数を処理するロジックが含まれています (これは、ゲーム エンジンのメイン プロシージャです)。

request.GETしたがって、問題は、dict で変換することによって、JSON 変数を正しく処理できないことです。既に書いた方法では、ネストされたオブジェクトと配列を渡すことができないためです。また、すべての値には文字列型がありますが、整数には整数型、その他には文字列型が必要です。

または、元のクエリ文字列を ( でrequest.query_string) 取得できるので、どうすればクエリ文字列を元の JSON オブジェクトに変換できますか?

4

2 に答える 2

27

ボトル0.10以降、request.jsonすぐに使用できます :)

ドキュメントはこちらです。

于 2011-12-05T14:46:57.510 に答える
21

request.jsonMEMFILE_MAXによって制限されます。

要求データが MEMFILE_MAX より大きい場合、別の方法が機能します

json.load(request.body)
于 2012-12-14T16:22:46.680 に答える