0

クッキー ポイズニングをテストしたいので、自分のプロジェクトの 1 つを編集したいと思います。そこで、製品の小計を含む Cookie を書きたいと思います。チェックアウト ページは、小計を表示するために再びそれを使用します。私の考えが正しいかどうかわかりませんし、クッキーも機能していません。

まず、これらのコードを addcart ボタン メソッドの下に配置します。

Dim aCookie As New HttpCookie("SubTotal")
aCookie.Value = objShopCart.ComputeSubTotal().ToString()
aCookie.Expires = DateTime.Now.AddDays(1)
HttpContext.Current.Response.Cookies.Add(aCookie)

そしてチェックアウトページで;

If (Request.Cookies("aCookie") IsNot Nothing) Then
    Dim subTotal As String
    If (Request.Cookies("aCookie")("SubTotal") IsNot Nothing) Then
        subTotal = Request.Cookies("aCookie")("SubTotal")
        lblSubTotal.Text = subTotal
    End If
End If

上記のコードによると、Cookie を読み取ることができません。Request.Cookies("aCookie")理由がわからないのはいつも何もありません。そして、Cookie中毒のデモでは、買い物かごに物を入れて編集するときにCookieを傍受するつもりです。そのため、チェックアウトページに到達したときに、小計などの間違った情報が表示されます。助けに感謝します。

4

1 に答える 1

0

保存したのと同じ名前で Cookie 値を取得する必要があります。例えば、

If (Request.Cookies("SubTotal") IsNot Nothing) Then
   Dim subTotal As String
   subTotal = Request.Cookies("SubTotal").Value
End If

参考までに、クライアント側で簡単に操作できるため、小計を Cookie に保存したくありません。セッション状態で保存するか、チェックアウト ページで再計算してください。

于 2013-01-21T15:31:29.167 に答える