2016-11-18 6 views
1

Storeコントローラのindexアクションを呼び出すたびに増分されるセッションハッシュにカウンタを格納しています。Chrome Dev Toolsのセッションハッシュはどこですか?

コードとスクリーンショットに示すように、Storeビューに印刷しています。

私は、スクリーンショットに示されているように、クッキーを削除することによって "カウンタをリセット"することができます。そして、私はサーバー上でセッションハッシュを印刷することを知っています。しかし、Chromeの開発ツールでセッションハッシュがどのように表示されますか?

store_controller.rb

class StoreController < ApplicationController 
    def index 
    @products = Product.order(:title) 
    session[:counter] ||= 0 
    session[:counter] += 1 
    end 
end 

店/ index.html.erbセッションハッシュを使うように暗号化されたスクリーンショット

HARTLのRails Tutorialで説明したようにenter image description here

+0

どのセッションストレージ戦略を使用していますか?いずれにしても、ブラウザからセッションのコンテンツにアクセスできるとは考えていません。コンテンツは常にブラウザに表示されるとは限りません。コンテンツが暗号化されているため、もの。 –

+0

わかりません、私はデフォルトのレール5戦略が何であれ使用しています。私は[ブログ記事](http://www.justinweiss.com/articles/how-rails-sessions-work/)を読んで、この[rails guide](http://guides.rubyonrails.org/security.html)を見つけました。私はセッションがブラウザに保存されていると思っていました。保存されているクッキーだけだと思っていたので、元々考えていた以上に複雑です。 – mbigras

+0

時にはクッキーがセッション全体、時にはそれはちょうどサーバーサイドに格納された何かを参照するIDです。いずれの場合も、不正操作を防ぐためにクッキーが暗号化されます。 –

答えて

1

<p id="notice"><%= notice %></p> 

<h1>Your Pragmatic Catalog</h1> 
<p><%= session[:counter] %></p> 
<% p session %> 

<% cache @products do %> 
    <% @products.each do |product| %> 
    <% cache product do %> 
     <div class="entry"> 
     <%= image_tag(product.image_url) %> 
     <h3><%= product.title %></h3> 
     <%= sanitize(product.description) %> 
     <div class="price_line"> 
      <span class="price"><%= number_to_currency(product.price) %></span> 
      <%= button_to 'Add to Cart', line_items_path(product_id: product) %> 
     </div> 
     </div> 
    <% end %> 
    <% end %> 
<% end %> 

それをプレーンテキストでtから見ることはできません彼はブラウザ。

関連する問題