Ваш код работает.Одна вещь, о которой я могу подумать, это когда вы извлекаете куки, которые вам нужно предоставить Id
.В противном случае он снова вызовет метод создания действия.
Index.cshtml
<button id="btn-create" type="button">Create Cookie</button>
<button id="btn-retrieve" type="button">Retrieve Cookie</button>
@section Scripts
{
<script>
$(function () {
$('#btn-create').click(function() {
$.ajax({
type: 'GET',
url: '@Url.Action("Get", "Values")',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (result) {
console.log(result);
}
});
});
$('#btn-retrieve').click(function() {
$.ajax({
type: 'GET',
url: '@Url.Action("Get", "Values", new {id = 123})',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (result) {
console.log(result);
}
});
});
})
</script>
}
ValuesController.cs
[Produces("application/json")]
[Route("api/Values")]
public class ValuesController : Controller
{
public IActionResult Get()
{
Response.Cookies.Append("Test", "dasdasdasdasd", new CookieOptions
{
Expires = DateTime.Now.AddDays(3)
});
return Ok();
}
// GET: api/Model/5
[HttpGet("{id}")]
public IActionResult Get(int id)
{
var z = Request.Cookies["Test"];
return Ok(z);
}
}