Aja*_*y P 9 json asp.net-mvc-4 asp.net-web-api
我创建了一个mvc api返回字符串的方法.但string我没有回来,而是想回来Json Object.这是我的代码.
[AllowAnonymous]
[HttpPost]
[Route("resetpassword")]
public IHttpActionResult ResetPassword(string email)
{
CreateUserAppService();
string newPassword =_userAppService.ResetPassword(email);
string subject = "Reset password";
string body = @"We have processed your request for password reset.<br/><br/>";
string from = ConfigurationManager.AppSettings[Common.Constants.FromEmailDisplayNameKey];
body = string.Format(body, newPassword, from);
SendEmail(email, subject, body, string.Empty);
return Ok<string>(newPassword);
}
Run Code Online (Sandbox Code Playgroud)
在这里它返回Ok<string>(newPassword);现在我想要返回Json object.我怎样才能返回Json对象?
Ser*_*ejs 11
试试看:
[AllowAnonymous]
[HttpPost]
[Route("resetpassword")]
public IHttpActionResult ResetPassword(string email)
{
//...
return Json(newPassword);
}
Run Code Online (Sandbox Code Playgroud)
你实际上已经在使用关键的东西......
[HttpGet]
public IHttpActionResult Test()
{
return Ok(new {Password = "1234"});
}
Run Code Online (Sandbox Code Playgroud)
您需要将其作为CLR对象返回,以便Web API将其序列化为JSON,您可以创建自己的POCO类或者像这样执行:
var passResponse = new
{
newPassword= yourNewPassword
};
Run Code Online (Sandbox Code Playgroud)
但从安全的角度来看,你所做的事情是不正确的,你绝对不应该通过电子邮件发送普通密码,你应该重置用户密码,为他们提供一个重置电子邮件链接到你的门户网站,并带有一些令牌,他们应该输入新的密码.你在这做什么并不安全.
| 归档时间: |
|
| 查看次数: |
27308 次 |
| 最近记录: |