Invalid web service call, missing parameter value

I looked at this for a while and can't see where the problem is. Any help is appreciated.

[WebMethod(true)] [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] public static string neighbourhoodTeam(string force, string neighbourhood) { //StreamManager streamMan = new StreamManager(); //return streamMan.StreamManagerUrlHandler("http://policeapi2.rkh.co.uk/api/" + force + "%2F" + neighbourhood + "%2F" + "people"); return neighbourhood + force; } 

JQuery

 function getOfficers(force, neighbourhood) { $.ajax({ type: "GET", contentType: "application/json; charset=utf-8", url: "../police/crimerequest.aspx/neighbourhoodTeam", data: JSON.stringify({ "force": force, "neighbourhood": neighbourhood }), dataType: "json", success: function (data) { var results = $.parseJSON(data.d); $.each(results, function (i) { businessCards.push(generateOfficerBusinessCard( results[i].name, results[i].rank, results[i].contact_details.mobile, results[i].contact_details.tel, results[i].contact_details.email)) }); PoliceApp.businessCardsPlaceHolder.html(businessCards.toString()); }, error: function (xhr, ajaxOptions, thrownError) { alert(xhr.status); alert(thrownError); alert(xhr.responseText); return false; } }); } 

And I get: {"Message":"Invalid web service call, missing value for parameter: \u0027force\u0027.","StackTrace":"

+4
source share
1 answer

Try sending using processData: false to your ajax options. By default, jQuery will wipe again.

Use a script or similar tool to check network traffic and see what is really sent to your web service.

+5
source

All Articles