我正在开发一个MVC4
应用程序,并使用Web API为我的Web服务发送Android应用程序的数据,我需要对结果进行一些测试,所以当我使用GET请求方法时,我在浏览器中放入了这个URL
http://localhost:2100/api/Accounts/LogIn?UserName=Fadi&PassWord=123456
这是我的方法
[HttpGet]
public ConfrmationMessage LogIn(string UserName, string PassWord)
{
ConfrmationMessage flag = new ConfrmationMessage();
if (WebSecurity.Login(UserName, PassWord))
{
flag.status = "LogedIn";
return flag;
}
else
{
flag.status = "The user name or password provided is incorrect.";
return flag;
}
}
并且每件事都运行良好,但当我使用[HttpPost]
并再次使用此网址时
http://localhost:2100/api/Accounts/LogIn?UserName=Fadi&PassWord=123456
它给我这个错误
{"Message":"The requested resource does not support http method 'GET'."}
所以我做了一些搜索,发现post方法使用anther方式从URL link放入数据,但仍然无法理解如何为post方法编写正确的URL所以任何帮助和提前感谢。
答案 0 :(得分:0)
您通过类似的表单元素提交帖子请求(您可以添加更多属性,但您可以轻松查看这些属性。
<form action="~/api/Accounts/LogIn" method="POST">
<!--input elements here -->
</form>
或通过ajax调用(需要jquery)
$.ajax({
url: "~/api/Accounts/LogIn",
type: "POST",
data: { UserName: "Fadi", PassWord: "123456" }
success: function(result) {
//do something when response is successful (result is the response)
},
error: function(jqXHR, textStatus, errorThrown) {
//will return exception info from server
//jqXHR is the request in xml format
//textStatus is the description of the exception (if there is one)
//errorThrown is the excception object thrown (if there is one)
}
});