0

Web APIコントローラーに次のメソッドがあります

[HttpGet]
    [ActionName("GetByModule")]
    public Object Get([FromUri]int id)
    {
        //var dblayer = new Db(WebConfigurationManager.ConnectionStrings["ConnectionString"]);

        var annDb = new ContactsDB(WebConfigurationManager.ConnectionStrings["ConnectionString"]);

        return  annDb.GetContacts(id).Tables[0];
    }

ここに、メソッドを呼び出すために使用しているJqueryコードがあります

$.ajax({
        type: "GET",
        contentType: "application/json",
        url: link,
        data: null,
        dataType: "json",
        success: function (data) {
            alert(data.d);

        },
        error: function (jqXHR, textStatus, err) {

            alert("Error");

        }
    });

呼び出される URL は

http://localhost:56834/api/Contacts/GetByModule?id=9

しかし、Jqueryから呼び出すとHTTP 405 Method Not Allowedが発生し続けます。

私が間違っているかもしれないことを考えてください。

前もって感謝します

4

1 に答える 1

1

「GET」リクエストを行っていることを確認できますか? (おそらく、Fiddler またはブラウザーのデバッグ モードから)。これは、jquery で「contentType」プロパティを設定しているように見えるためです。これは、「GET」リクエストで本文を送信するべきではないため、理想的には存在すべきではありません。生のリクエスト全体を共有していただけますか (Fiddler からのものである可能性があります)。

于 2013-06-17T19:02:55.707 に答える