javascript - Accessing fields with Python CGI FieldStorage from a JQuery AJAX call -


i have written jquery makes ajax call python script. i've been successful in passing strings , forth between them, i'm getting weird behaviour cgi fieldstorage object i'm using input in python script. i've managed send simple object key/value pairs, this:

deptobj = { 1 : '1', 2 : '2'};  $.ajax({     data: deptobj,     url: "simple.py",     success: function(result) { console.log("success!"); console.log(result); },     error: function(request, error) { console.log("error"); console.log(request); } }); 

here python script, simple.py:

#!/usr/bin/env python import json import cgi import cgitb  print "content-type: application/json\n\n"  cgitb.enable() # display error messages in web browser  fs = cgi.fieldstorage()  print json.dumps(fs.keys()) 

when run javascript, correctly prints out keys in object, i.e. ["two", "one"] (i'm not sure why they're reversed). can corresponding values replacing last line of simple.py print json.dumps(fs["one"].value).

however, when try make multi-level object (an object within object), weird behaviour. example, kept deptobj had created, passed in data: { departments: deptobj} ajax call. then, when tell simple.py print out keys, result ["departments[two]", "departments[one]"] instead of expect, ["departments"]. then, since "departments" apparently not key, keyerror when try print json.dumps(fs["departments"].value), while print json.dumps(fs["departments[one]"].value) gives me result of 1.

according documentation fieldstorage, "the fields, accessed through form[key], instances of fieldstorage", thought fieldstorage object have "departments" key value fieldstorage object containing keys "one" , "two". however, doesn't seem true. how form multi-level javascript object , access in python script using fieldstorage?

this jquery being silly. should set traditional: true in $.ajax call.


Comments

Popular posts from this blog

c# - DetailsView in ASP.Net - How to add another column on the side/add a control in each row? -

javascript - firefox memory leak -

Trying to import CSV file to a SQL Server database using asp.net and c# - can't find what I'm missing -