Я пытаюсь опубликовать объект JSON на веб-сервис asp.net.
Мой JSON выглядит так:
var markers = { "markers": [
{ "position": "128.3657142857143", "markerPosition": "7" },
{ "position": "235.1944023323615", "markerPosition": "19" },
{ "position": "42.5978231292517", "markerPosition": "-3" }
]};
Я использую json2.js, чтобы зацепить мой объект json.
и я использую jquery, чтобы опубликовать его на своем веб-сервисе.
$.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);
}
});
Я получаю следующую ошибку:
"Недопустимый примитив JSON:
Я нашел кучу постов, связанных с этим, и это, кажется, действительно распространенная проблема, но ничего, что я пробую, не решает проблему.
Когда firebug публикуется на сервере, это выглядит так:
Маркеры% 5B0% 5D% 5Bposition% 5D = 128,3657142857143 & маркеры% 5B0% 5D% 5BmarkerPosition% 5D = 7 & маркеры% 5B1% 5D% 5Bposition% 5D = 235,1944023323615 & маркеры% 5B1% 5D% 5BmarkerPosition% 5D = 19 & маркеры% 5В2% 5D% 5Bposition% 5D = +42,5978231292517 & маркеры% 5В2% 5D% 5BmarkerPosition% 5D = -3
Моя функция веб-сервиса, которая вызывается:
[WebMethod]
public string CreateMarkers(string markerArray)
{
return "received markers";
}