场景:我们有带有显示 myOrders 的 MVC 4.0 Web 应用程序,它返回带有历史数据的 json 结果。
此操作将由 JQUERY Ajax 从前端调用。
问题:无论如何我们可以进行身份验证并确保从 JQuery Ajax 前端传递的 orderID 属于登录用户?
多谢了。
场景:我们有带有显示 myOrders 的 MVC 4.0 Web 应用程序,它返回带有历史数据的 json 结果。
此操作将由 JQUERY Ajax 从前端调用。
问题:无论如何我们可以进行身份验证并确保从 JQuery Ajax 前端传递的 orderID 属于登录用户?
多谢了。
我通常是这样做的。可能您的订单记录应该有一个CreatedById
字段,您可以在其中存储创建它的用户的 ID。当您在操作方法中从 Ajax 调用中获取 OrderID 时,从中构建一个 Order 对象ID
并检查 CreatedByID 值是什么。将其与当前登录的 UserId 进行比较(您可能在会话中拥有它?)并决定是否向用户显示页面。
像这样的东西。
public ActionResult GetOrder(int id)
{
Order objOrder=OrderService.Get(id);
if(objOrder.CreatedById==GetCurrentLoggedInUserId())
{
return View(objOrder);
}
else
{
return View("NotYours");
}
}