Web method throws internal error..parameters match so not sure why
<p>Very old 1.1 vb.net / asp.net web app.  I'm trying to make an ajax call to fill an autocomplete text box with this:</p>

<pre><code>    $("#ucAddActionItemIssueActions_txtActionItem")
// don't navigate away from the field on tab when selecting an item
.bind("keydown", function(event) {
    if (event.keyCode === $.ui.keyCode.TAB &amp;&amp; $(this).data("autocomplete").menu.active) {
        event.preventDefault();
    }
}).autocomplete({
    minLength: 0,
   source: function (request, response) {
        //get client value
        var c = $("#ucAddActionItemIssueActions_ddlClientAssignTo").val();
         var params= '{"ClientID":' + c + '}';
        $.ajax({
            url: "GetLogins.asmx/GetLogins",
            data: params,
            dataType: "json",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            dataFilter: function (data) { return data; },
            success: function (data) {
                response($.map(data.d, function (item) {
                    return {
                        value: item.name
                    }
                }))
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert(textStatus);
            }
        });},
    focus: function() {
        // prevent value inserted on focus
        return false;
    },
    select: function(event, ui) {
        var terms = split(this.value);
        // remove the current input
        terms.pop();
        // add the selected item
        terms.push(ui.item.value);
        var email = GetEmail(ui.item.value);
        email = email + ";";
        emails.push(email);
        $("#ucAddActionItemIssueActions_hdnEmails").val(emails.join(""));
        // add placeholder to get the comma-and-space at the end
        terms.push("");
        this.value = terms.join("");
        return false;
    }
});
</code></pre>

<p>The web method (.asmx file) is this (just as a test case):</p>

<pre><code>Imports System.Web.Services
Imports System.Collections
&lt;System.Web.Services.WebService(Namespace := "http://tempuri.org/quikfix.jakah.com/GetLogins")&gt; _
Public Class GetLogins
    Inherits System.Web.Services.WebService

    &lt;WebMethod()&gt; _
    Public Function GetLogins(ByVal ClientID As Integer) As String()
        Dim myList As New ArrayList
        myList.Add("jstevens")
        myList.Add("jdoe")
        myList.Add("smartin")

        Dim arr() As String = CType(myList.ToArray(Type.GetType("System.String")), String())
        Return arr
    End Function
End Class
</code></pre>

<p>When running my app in the developer tools of chrome it is throwing an internal 500 error.  When I click on it it says:</p>

<blockquote>
  <p>System.InvalidOperationException: Request format is invalid:
  application/json; charset=UTF-8.   at
  System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()   at
  System.Web.Services.Protocols.WebServiceHandler.Invoke()   at
  System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()</p>
</blockquote>

<p>The parameters all match so Im not sure why this is throwing an error.  Do I need anything in my <code>web.config</code> file to explicitly give any reference to my .asmx file?  This is an old 1.1 .net web app so I'm not sure if any changes to the web.config file need to be made?</p>
