mvcでAjaxを使用してコントローラーアクションを呼び出しているときにエラーが発生しました
コントローラでメソッドを呼び出すために使用したajax関数を参照してください
function ChangeEndDate(e) {
$.ajax({
type: "POST",
url: "MonitoringSupplyOn/YourAction",
contentType: "application/json; charset=utf-8",
data:JSON.stringify({
id:e.value
}),
success: function (result) {
alert(result);
},
error: function (jqXHR, textStatus, errorThrown) {
alert("oops: " + textStatus + ": " + jqXHR.responseText);
}
});
}
次のようにコントローラーのメソッド:
[HttpPost]
public ActionResult YourAction(string id)
{
return Json(new { id = "succsess" });
}
エラーは次のように取得されます: おっと:エラー:
<head>
<title>Runtime Error</title>
<style>
body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;}
p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px}
b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px}
H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }
H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }
pre {font-family:"Lucida Console";font-size: .9em}
.marker {font-weight: bold; color: black;text-decoration: none;}
.version {color: gray;}
.error {margin-bottom: 10px;}
.expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; }
</style>
</head>
<body bgcolor="white">
<span><H1>Server Error in '/RB.MONICA.Web' Application.<hr width=100% size=1 color=silver></H1>
<h2> <i>Runtime Error</i> </h2></span>
<font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif ">
<b> Description: </b>An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed.
<br><br>
<b>Details:</b> To enable the details of this specific error message to be viewable on the local server machine, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "RemoteOnly". To enable the details to be viewable on remote machines, please set "mode" to "Off".<br><br>
<table width=100% bgcolor="#ffffcc">
<tr>
<td>
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode="RemoteOnly"/>
</system.web>
</configuration>
</td>
</tr>
</table>
<br>
<b>Notes:</b> The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.<br><br>
<table width=100% bgcolor="#ffffcc">
<tr>
<td>
<!-- Web.Config Configuration File -->
<configuration>
<system.web>
<customErrors mode="On" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>
</td>
</tr>
</table>
<br>
</body>
</html>
Iamは常にここでエラーメッセージを受け取ります。どこが悪かったのか教えてください。
おっと:エラー:
<head>
<title>The HTTP verb POST used to access path '/RB.MONICA.Web/MONICA/MonitoringSupplyOn/MonitoringData/MonitoringSupplyOnController/YourAction' is not allowed.</title>
<style>
body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;}
p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px}
b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px}
H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }
H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }
pre {font-family:"Lucida Console";font-size: .9em}
.marker {font-weight: bold; color: black;text-decoration: none;}
.version {color: gray;}
.error {margin-bottom: 10px;}
.expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; }
</style>
</head>
<body bgcolor="white">
<span><H1>Server Error in '/RB.MONICA.Web' Application.<hr width=100% size=1 color=silver></H1>
<h2> <i>The HTTP verb POST used to access path '/RB.MONICA.Web/MONICA/MonitoringSupplyOn/MonitoringData/MonitoringSupplyOnController/YourAction' is not allowed.</i> </h2></span>
<font face="Arial, Helvetica, Geneva, SunSans-Regular, sans-serif ">
<b> Description: </b>An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
<br><br>
<b> Exception Details: </b>System.Web.HttpException: The HTTP verb POST used to access path '/RB.MONICA.Web/MONICA/MonitoringSupplyOn/MonitoringData/MonitoringSupplyOnController/YourAction' is not allowed.<br><br>
<b>Source Error:</b> <br><br>
<table width=100% bgcolor="#ffffcc">
<tr>
<td>
<code>
現在のWebリクエストの実行中に、未処理の例外が生成されました。例外の発生源と場所に関する情報は、以下の例外スタックトレースを使用して識別できます。
</td>
</tr>
</table>
<br>
<b>Stack Trace:</b> <br><br>
<table width=100% bgcolor="#ffffcc">
<tr>
<td>
<code><pre>
[HttpException(0x80004005):パス'/RB.MONICA.Web/MONICA/MonitoringSupplyOn/MonitoringData/MonitoringSupplyOnController/YourAction'へのアクセスに使用されるHTTP動詞POSTは許可されていません。]
System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContextコンテキスト、AsyncCallbackコールバック、オブジェクト状態)+4170038
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+405
System.Web.HttpApplication.ExecuteStep(IExecutionStep step、Boolean&completedSynchronously)+375
</td>
</tr>
</table>
<br>
<hr width=100% size=1 color=silver>
<b>Version Information:</b> Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272
</font>
</body>