这篇文章将为大家详细讲解有关ASP.NET Core中怎么利用 Razor处理Ajax请求,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
##前台代码<form method="post">
<div class="login-ic">
<i></i>
<input asp-for="Login.UserName" id="UserName" />
<div class="clear"> </div>
</div>
<div class="login-ic">
<i class="icon"></i>
<input id="PassWord" asp-for="Login.PassWord" />
<div class="clear"> </div>
</div>
<div style="margin-top:-0.5em;">
<ul>
<li>
<input type="checkbox" id="brand1" value="">
<label for="brand1">记得我</label>
</li>
</ul>
<a href="#">
忘记密码?
</a>
</div>
<div class="log-bwn" style="margin-top:4em;">
<input type="button" value="登录" id="btnLogin">
</div>
<div class="log-bwn" style="margin-top:1em;">
<input type="button" value="注册" onclick="location.href='/user/register'">
</div>
</form>##Script代码$("#btnLogin").click(function () {
$.post('/user/Login?hanler=LoginIn', { UserName:$("#UserName").val(), PassWord:$("#PassWord").val() }, function (data) {
console.log(data);
});
});##后台代码public class LoginModel : PageModel{
private UserServiciCasee _userService;
public LoginModel(UserServiciCasee userService) {
_userService = userService;
}
public void OnGet() {
}
[BindProperty]
public UserLoginDto Login { get; set; }
public async Task<ActionResult> OnPostLoginInAsync()
{ //if (ModelState.IsValid)
//{
// var user = await _userService.LoginAsync(Login);
// if (user != null)
// {
// return new JsonResult(ApiResult.ToSucess("登录成功!"));
// }
// return new JsonResult(ApiResult.ToFail("帐号密码错误!"));
//}
return new JsonResult(ApiResult.ToFail("参数填写错误,请检查!"));
}
}
在ASP.NET Core MVC 2.0中,FormTagHelper为HTML表单元素注入反伪造令牌。例如,Razor文件中的以下标记将自动生成防伪标记:
<form method="post"><!-- form markup --></form>
明确添加使用 @Html.AntiForgeryToken()
$("#btnLogin").click(function () { $.ajax({ type: "POST", url: "/user/Login?handler=LoginIn", beforeSend: function (xhr) { xhr.setRequestHeader("XSRF-TOKEN", $('input:hidden[name="__RequestVerificationToken"]').val()); }, data: { UserName: $("#UserName").val(), PassWord: $("#PassWord").val() }, success: function (response) { console.log(response); }, failure: function (response) { alert(response); } }); });
public void ConfigureServices(IServiceCollection services){ services.AddMvc(); services.AddAntiforgery(o => o.HeaderName = "XSRF-TOKEN"); }
关于ASP.NET Core中怎么利用 Razor处理Ajax请求就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。