我想实现自定义用户身份验证。我有用户名文本框和密码文本框我也有提交表单的按钮。
@using (@Html.BeginForm("Submit","Profile"))
{
<table>
<tr>
<td>Username: </td>
<td>@Html.TextBox("Username")</td>
</tr>
<tr>
<td>Password: </td>
<td>@Html.TextBox("Password")</td>
</tr>
<tr>
<td></td>
<td><input id="btnSubmit" type="submit" value="Submit" /></td>
</tr>
</table>
}
单击该按钮时,将调用操作方法。
public ActionResult Submit(User user)
{
HttpCookie myCookie = new HttpCookie("User");
myCookie["current"] = user.Username;
myCookie.Expires = DateTime.Now.AddDays(10);
Response.Cookies.Add(myCookie);
return RedirectToAction("Index");
}
我想要的只是检查是否没有cookie,无法访问操作方法。如果有cookie可以访问。
答案 0 :(得分:0)
根据我的评论,这样的事情应该有效:
var cookie = Request.Cookie["myCookie"];
if (cookie == null)
return new HttpUnauthorizedResult();
答案 1 :(得分:0)
为什么不使用FormsAuthentication.SetAuthCookie方法来设置cookie和标准[Authorize]属性?