I am trying to post a JSON object to a asp.net webservice.
My json looks like this:
var markers = { "markers": [
{ "position": "128.3657142857143", "markerPosition": "7" },
{ "position": "235.1944023323615", "markerPosition": "19" },
{ "position": "42.5978231292517", "markerPosition": "-3" }
]};
I am using the json2.js to stringyfy my JSON object.
and I am using jquery to post it to my webservice.
$.ajax({
type: "POST",
url: "/webservices/PodcastService.asmx/CreateMarkers",
data: markers,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data){alert(data);},
failure: function(errMsg) {
alert(errMsg);
}
});
I am getting the following error:
Invalid JSON primitive
I have found a bunch of posts relating to this and it seems to be a really common problem but nothing i try fixes the issue.
When firebug what is being posted to the server it looks like this:
markers%5B0%5D%5Bposition%5D=128.3657142857143&markers%5B0%5D%5BmarkerPosition%5D=7&markers%5B1%5D%5Bposition%5D=235.1944023323615&markers%5B1%5D%5BmarkerPosition%5D=19&markers%5B2%5D%5Bposition%5D=42.5978231292517&markers%5B2%5D%5BmarkerPosition%5D=-3
My webservice function that is being called is:
[WebMethod]
public string CreateMarkers(string markerArray)
{
return "received markers";
}