0

I have a use case where is need to post a request from my javascript to python.wsgi, I want to send request data as json.

in my json the code looks like :

var aclient = HttpClient(); 
var pay_load = {what:"USERS", uname:username, password:pwd, index:"0"};
setTimeout(aClient.get("POST",alluserUrl, getAllUsersCallBack, JSON.stringify(pay_load)), 50);

where aclient.get is :

var HttpClient = function()
{
this.get = function(aMethod, aUrl, aCallback, payload) {
var anHttpRequest = new XMLHttpRequest();

    anHttpRequest.onreadystatechange = function() {
        if (anHttpRequest.readyState == 4 && anHttpRequest.status == 200)
        {
            //console.log("triggering callback");
            aCallback(anHttpRequest.responseText);
            //return anHttpRequest.responseText;
        }
        else
        {
            //console.log("not 200");
            //console.log(anHttpRequest.status);
            //aCallback(sample);
            //console.log(sample);
        }

    };

    if ("GET" == aMethod)
    {
        anHttpRequest.open("GET", aUrl, true);
        anHttpRequest.setRequestHeader('content-type', 'application/json');
        anHttpRequest.setRequestHeader('Access-Control-Allow-Headers', '*');
        anHttpRequest.setRequestHeader('Access-Control-Allow-Origin', '*');
        anHttpRequest.send(payload);
    }
    else if ("POST" == aMethod)
    {
        anHttpRequest.open("POST", aUrl , true);
        anHttpRequest.setRequestHeader("content-type", "application/json");
        anHttpRequest.setRequestHeader('Access-Control-Allow-Headers', '*');
        anHttpRequest.setRequestHeader('Access-Control-Allow-Origin', '*');
        anHttpRequest.send(payload);
    }
    };
   };

in python wsgi I am trying to decode the post data as :

def handlePost(environ, start_response):
    request_body_size = int(environ.get('Content-Length', 0))
    request_body = environ['wsgi.input'].read(request_body_size)
    data = json.loads(request_body)     
    what = data['what']

but it gives me error saying failed to load json.

2

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.