Как отправить httpcontext с ajax в параметры api
в моем контроллере:
public class ShoppingCartController : Controller { // GET: /ShoppingCart/ public ActionResult Index() { return View(this.HttpContext); } ... }
в поле зрения:я пытаюсь отправить httpcontext в метод api следующим образом.
var urll = 'https://localhost:44379/api/apiClass/IndexOfCarts'; $.ajax({ type: "post", url: urll, error: function () { alert("error carts") }, @*data: JSON.stringify(@Model.HttpContext, null, '\t'),*@ data: { httpContext: @Model}, // contentType: 'application/json', //dataType:"json", success: function (dataa) { alert("****ok carts****") } });
в действии api:
[Microsoft.AspNetCore.Mvc.HttpPost()] public ActionResult<string> IndexOfCarts([FromForm]HttpContext httpContext) { return "ddd"; }
действия по API не называют.но при изменении параметра к другому виды и использование AJAX для запроса к API действий, действий по API называют и работа
Что я уже пробовал:
я меняю[fromform] на [frombody] для параметра,но и api не вызывается.(Программа не переходит к действию api)
F-ES Sitecore
Вы не можете этого сделать, вы можете передавать только текст в качестве параметров json, а не объекты в памяти. Чтобы отправить объект, вам нужно сериализовать его в текст, отправить через ajax, а затем десериализовать в вашем api. Httpcontext не позволяет вам делать это по умолчанию. Создайте сериализуемый объект, содержащий только те биты информации из httpcontext, которые вам нужны, и отправьте их в качестве параметров.