ASP.Net 3.5プロジェクトでWebサービスを取得して、PUT要求を受け入れることができません。
AJAX呼び出しは次のとおりです。
var url = '/MyService.asmx/UpdateObject';
var options = {
dataType: "json",
contentType: "application/json",
cache: false,
type: "PUT",
data: data ? ko.toJSON(data) : null
};
$.ajax(url, options);
MyService.asmxには、次のものがあります。
[WebMethod(EnableSession = true)]
[System.Web.Script.Services.ScriptMethod(ResponseFormat = System.Web.Script.Services.ResponseFormat.Json, UseHttpGet=true)]
public ButDto UpdateObject(ObjectDto myObject)
{
//Do some stuff here
return myObject;
}
ただし、次のエラーメッセージが表示されます。
POSTリクエストを使用してメソッドUpdateObjectを呼び出そうとしましたが、これは許可されていません。
Webサービス宣言から「、UseHttpGet = true」を削除し、同じajax呼び出しを実行すると、次のエラーメッセージが表示されます。
GETリクエストを使用してメソッドUpdateObjectを呼び出そうとしましたが、これは許可されていません。
だから私はここで少し困惑しています。
更新:
dataType: "text"も試してみましたが、結果は同じでした。