2015-04-07 2 views
0

Я относительно новичок в веб-разработке, и я понятия не имею, как безопасно хранить информацию о пользователе в интерфейсе приложения. Моя проблема - действительно проблема извлечения данных с помощью клиентского javascript из ответа сервера.Сохранение информации об аутентификации пользователя на лицевой панели

Все, что я знаю, как сделать это для извлечения пользовательских данных с помощью шаблонов, как EJS так:

<a id="user_id" value="<%=user._id%>" ></a> 

но должно быть лучше, чем это? И я чувствую, что помещать информацию пользователя в DOM - плохая идея, почему бы не поместить в WebDB или IndexedDB?

Должен ли я сделать это как так ?:

sessionStorage.setItem('user_id', '<%=user._id%>'); 

проблема заключается в том, что это не на самом деле извлечь данные:

enter image description here

Так что, возможно, я должен задать вопрос - как могу ли я получить данные от ответа сервера в заголовке html?

ответ

1

Как правило, при успешном входе в систему cookie устанавливается с UID, который однозначно идентифицирует запросы, сделанные этим пользователем. Некоторые серверы делают это автоматически (просто Google jsessionid) и сопоставляют этот идентификатор с набором переменных, которые вы сохранили для этого клиента (обычно называемые переменными с привязкой к сеансу).

Нужно добавить это в каждую форму, было бы ужасно неэффективным процессом. Вместо этого используйте cookie.

1

Ну, как только пользователь вошел в систему, я думаю, что это нормально, чтобы показать пользователю свое имя пользователя, а не пароль.

Я бы с localStorage для этого:

window.localStorage.username = 'theboss'; 
document.getElementById('user_id').value = window.localStorage.username; 

Documentation for localStorage