2017-12-22 21 views
1

私のサーバから渡された値を自分のローカルストレージ値と比較して、いくつかのhtmlを条件付きで表示しようとしています。私はこのローカルストレージ値にアクセスする方法を理解できません。ejsファイルのLocalStorage値にアクセスする

<% for(var i=0; i < list.length; i++) { %> 
 
    <% 
 
    checkUser = function(passed_in_UID) { 
 
     return(passed_in_UID == localStorage.getItem("UID")); 
 
    }; 
 
    %> 
 
    <% if(checkUser(list[i].val().UID)) { %> 
 
    <p>Show this tag if conditional true</p> 
 
    <% } %> 
 
<% } %>

私はのlocalStorageはEJSでは有効ではありません推測するため、内部500エラーを取得しておきます。どのように私はこの値をつかむのですか?

+2

localStorageはブラウザに関連付けられているものです。サーバーではアクセスできません。ユーザー関連の設定をデータベースに保存してejsコードにアクセスするか、ユーザーのCookieに設定してそこから読み取ることができます – eltonkamami

答えて

2

ローカルストレージはブラウザ固有のものです。 EJSはサーバー側で実行されます(サーバー側のレンダリング)。そのため、サーバーからはローカル記憶域にアクセスできません。非機密データを保管し、サーバー側でEJSを使用するには、何らかのデータベース形式を使用することができます。しかし、何らかの形で2つのサーバーデータ間でデータを共有しない限り、クライアントデータとは別です。

関連する問題