سؤال

أحتاج إلى الحصول على بيانات من JSON ، نقلها AJAX من العميل. في الأساس استخدمت شيئًا كهذا:

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

عندما يكون main.parse_request وظيفة ، تحتوي على بعض المنطق للتعامل مع المتغيرات في JSON (إنه إجراء رئيسي لمحرك اللعبة).

لذا فإن المشكلة هي أنه لا يمكنني التعامل بشكل صحيح مع متغيرات JSON ، من خلال التحول request.GET في القولون: لأنني كتبت بطريقة كتبت بالفعل أنني لا أستطيع اجتياز الأشياء المتداخلة والصفائف. كما أن كل قيمة لها نوع سلسلة ، بينما أحتاج إلى أنواع عدد صحيح على الأعداد الصحيحة ونوع السلسلة على الراحة الأخرى.

أو بما أنه يمكنني الحصول على سلسلة الاستعلام الأصلية (بواسطة request.query_string) ، كيف يمكنني تحويل سلسلة استعلام إلى كائن JSON الأصلي؟

هل كانت مفيدة؟

المحلول

الآن منذ زجاجة 0.10, ، ال request.json جاهز للاستخدام :)

الوثيقة هي هنا.

نصائح أخرى

request.json محدود من قبل memfile_max.

طريقة أخرى تعمل إذا كانت بيانات الطلب أكبر من memfile_max

json.load(request.body)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top