2012-04-24 134 views
0

場景: 我們有MVC 4.0 web應用程序,顯示myOrders,它返回包含歷史數據的json結果。JQuery Ajax調用MVC 4.0身份驗證

此操作將由前端的JQUERY Ajax調用。

問題: 是否有無論如何我們可以進行身份​​驗證並確保從JQuery Ajax前端傳遞的orderID屬於登錄用戶?

感謝堆。

回答

1

我通常這樣做。可能您的訂單記錄應該有一個CreatedById字段,您可以在其中存儲創建它的用戶的ID。當您在操作方法中從Ajax調用中獲取OrderID時,請從ID構建一個Order對象,並檢查CreatedByID值是什麼。將它與當前登錄的UserId進行比較(您可能會在會話中),然後決定是否向用戶顯示該頁面。

有些事情是這樣的。

public ActionResult GetOrder(int id) 
{ 
    Order objOrder=OrderService.Get(id); 
    if(objOrder.CreatedById==GetCurrentLoggedInUserId()) 
    { 
    return View(objOrder); 
    } 
    else 
    { 
    return View("NotYours"); 
    } 
}