本文介绍了AngularJs邮政的WebAPI总是空的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
角code:
getAuthorizationStatus:功能(){
变种推迟= $ q.defer();
$ HTTP({
方法:POST,
网址:网址,
数据:{
用户名:$ scope.username,
密码:$ scope.password
},
的contentType:应用/ JSON,
标题:{
内容类型:应用程序/ x-WWW的形式urlen codeD;字符集= UTF-8
}
})。成功(deferred.resolve)
.error(deferred.reject);
返回deferred.promise;
},
我的服务器端code:
[HttpPost]
公众诠释的ValidateUser([FromBody]凭证的凭证)
{
尝试
{
字符串的用户名= credentials.username;
字符串密码= credentials.password;
//做东西
}
赶上(异常前)
{
扔恩;
返回-1;
} 返回-1; //无效的用户
}
我遇到的问题是,我能够打API方法,但里面的数据总是空。我曾尝试这样几种组合:
数据:JSON.stringify({
用户名:用户名,
密码:输入mypassword
}),
没有骰子。
我是什么在错误行为?
解决方案
我反而试图改变 $ HTTP
的POST的默认和适当的行为,反而让服务器从正确的地方读取数据。从?
[HttpPost]
公众的ActionResult指数(INT?ID)
{
流REQ = Request.InputStream;
req.Seek(0,System.IO.SeekOrigin.Begin);
JSON字符串=新的StreamReader(REQ).ReadToEnd(); InputClass输入= NULL;
尝试
{
//假设JSON.net/Newtonsoft库从http://json.$c$cplex.com/
输入= JsonConvert.DeserializeObject< InputClass>(JSON)
} 赶上(异常前)
{
//尝试和处理畸形的POST体
返回新的HTTPStatus codeResult(的HTTPStatus code.BadRequest);
} //做东西}
这篇关于AngularJs邮政的WebAPI总是空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!