مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

iran

عضویت از 1394/01/31

نحوه فراخوانی RequestVerificationToken در ajax mvc.core

  • شنبه 8 خرداد 1400
  • 10:41
تشکر میکنم

سلام
من کد های زیر را نوشته ام

<div class="row">
	<div class="col-md-4">
		<form asp-action="Create">
			<div asp-validation-summary="ModelOnly" class="text-danger"></div>
			<input name="__RequestVerificationToken" type="hidden" value="aGeneratedAntiForgeryTokenValue">
			<div class="form-group">
				<label asp-for="JobId" class="control-label"></label>
				<input asp-for="JobId" class="form-control" />
				<span asp-validation-for="JobId" class="text-danger"></span>
			</div>
			<div class="form-group">
				<label asp-for="Name" class="control-label"></label>
				<input asp-for="Name" class="form-control" />
				<span asp-validation-for="Name" class="text-danger"></span>
			</div>
			<div class="form-group">
				<a class="btn btn-primary add">Create</a>
			</div>
		</form>
	</div>
</div>

<div>
	<a asp-action="Index">Back to List</a>
</div>



@section scripts{
	<script>
		$('.add').on('click',function(e) {
			e.preventDefault();
					var _this = $(this);
					var _form = _this.closest("form");
					var validthis = _form.valid();
			if (validthis) {
						var token = $('input[name=__RequestVerificationToken]').val();
						var objectData = {
							JobId: $('#JobId').val(),
							Name: $('#Name').val()
						};
						console.log(token);
						$.ajax({
							url: '@Url.Action("Create", "Jobs")',
							data: {
							RequestVerificationToken: token,
								add: objectData
							},
							type: "post",
							success: function(res) {
							}
						});
					}
				});
	</script>
	<script src="~/lib/jquery-validation/dist/jquery.validate.min.js"></script>
	<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"></script>
}


و

   [HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<IActionResult> Create([Bind("JobId,Name")] Job job)
        {
            if (ModelState.IsValid)
            {
                _context.Add(job);
                await _context.SaveChangesAsync();
                return RedirectToAction(nameof(Index));
            }
            return View(job);
        }

ارور زیر را می دهد

jquery.min.js:2 POST https://localhost:44329/Jobs/Create 400	

برای حل مشکل باید چه تغییراتی در کدهایم ایجاد کنم

باتشکر

پاسخ های این پرسش

تعداد پاسخ ها : 0 پاسخ
در حال حاضر هیچ پاسخی ارسال نشده است
کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)