0

シナリオ:履歴データを含むjson結果を返す表示myOrdersを備えたMVC4.0Webアプリケーションがあります。

このアクションは、フロントエンドからJQUERYAjaxによって呼び出されます。

問題:とにかく認証して、JQuery Ajaxフロントエンドから渡されたorderIDがログインしたユーザーに属していることを確認できますか?

ヒープに感謝します。

4

1 に答える 1

1

私は通常このようにします。おそらく、注文レコードには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");
  }
}
于 2012-04-24T22:43:58.990 に答える