Angular: случайные имена классов и идентификаторов - PullRequest
0 голосов
/ 25 апреля 2018

Чтобы избежать взлома веб-страниц или сделать его более сложным, возможно ли в Angular рандомизировать имена атрибутов class и id? Например, Instagram использует эту стратегию, где имена атрибутов class и id представляются случайными строками, которые уникально генерируются при каждом ответе сервера.

Если Angular не поддерживает это, есть ли другие методы, доступные для достижения этой цели?

Спасибо.

1 Ответ

0 голосов
/ 25 апреля 2018

Если вы хотите использовать случайные идентификаторы и классы, лучше всего вообще ничего не использовать.Не помещайте идентификаторы и классы в ваши элементы.

В Angular вы можете напрямую добавлять стили к своим элементам:

<div ngStyle="divStyle"></div>

divStyle = {
  backgroundColor: 'red',
  color: white,
};

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

randomId = Math.random().toString(36);
ngOnInit() {
  let styleSheet = document.styleSheets[0];
  styleSheet.insertRule(`#${randomId} { background-color: red; color: white; }`, styleSheet.cssRules.length);
}

<div [id]="randomId"></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...