mike44
mike44

Reputation: 812

Getting data through jQuery ajax request

I'm using the following code to get the dataa from the server:

  $.getJSON('http://xxx.xxx.xxx.xx/SampleWebService/Service.svc/SampleMethod?callback=?', dd, function (data) {
                alert(data);
  });

From the server, I'm sending the byte array as response. In firebug, in Net > Response tab, I get:

jQuery19101878696953793153_1365677709012([67,37,94,38,42,44,69,67,71,32,97,116,116,97,99,104,101,100,32,102,111,114,32,112,97,116]);

Also in Net > JSON tab, I get data with several keys.

But how to get the data at alert(data);; so that I process on that data. I don't know, how this thing works.

Edit:

I tried this different approach:

 $.ajax({
                type: "GET",
                dataType: "jsonp",
                contentType: "application/javascript",
                data: dd,
                crossDomain: true,
                url: "http://xxx.xxx.xxx.xx/SampleWebService/Service.svc/SampleMethod",
                success: function (data) {
                    alert(JSON.parse(data));
                },
                complete: function (request, textStatus) { //for additional info
                    alert(request.responseText);
                    alert(textStatus);
                },
                error: function(request, textStatus, errorThrown) {
                    alert(textStatus);
                  }
            });

But I got: parseerror as alert.

Upvotes: 0

Views: 15155

Answers (4)

mike44
mike44

Reputation: 812

The problem was the data was very huge. I was sending array of around 10,00,000+ bytes. So instead I divided it into list of bytes (each having 1000 bytes) & then sent as response.

I don't know if this is the best solution, but it solved my problem. BTW, thanks to all for helping me.

Upvotes: 0

tinyd
tinyd

Reputation: 952

From looking at the docs (I haven't tried this) you need to explicitly tell jQuery that you're making a JSONP call that will invoke the function that's returned. Something like this:-

 $.ajax({
     type : "GET",
     dataType : "jsonp",
     url : "http://xxx.xxx.xxx.xx/SampleWebService/Service.svc/SampleMethod",
     success: function(data){
           alert(data);
     }
});

Upvotes: 2

Gowsikan
Gowsikan

Reputation: 5691

Your response is a function call. If u define function name with name jQuery19101878696953793153_1365677709012 you can process the 'data' else from your server just send the json as a response to $.getJSON's callback to work

Upvotes: 0

ravisolanki07
ravisolanki07

Reputation: 647

Function you are looking for is JSON.parse. Please try this code :

$.post("YouURL", { 'ParameterName': paramvalue }, function (Data) {
  var data = JSON.parse(data);
});

Upvotes: 0

Related Questions