Предоставление состояния на стороне сервера через клиентские элементы управления в ASP.net - PullRequest
0 голосов
/ 11 февраля 2011

Надеюсь, это не лишний вопрос - я не совсем уверен, как это сформулировать.Допустим, у меня есть список элементов на странице ASP.net.Этот список выбирается тем, что всякий раз, когда пользователь нажимает на него, страница выполняет обратную передачу, а код сервера сохраняет индекс или некоторый уникальный идентификатор изображения в свойстве ViewState, указывающем, что оно выбрано в данный момент.

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

  1. Это угроза безопасности вкаким-либо образом, формой или формой (то есть, раскрывая детали реализации страницы)?

  2. Есть ли лучший / лучший способ сделать это, который является более отраслевым стандартом?Предоставляет ли ASP.net платформу для этого, которая чище моей идеи?Похоже, это было бы довольно распространенным требованием для меня ...

Я работаю в ASP.net уже около двух лет.Пожалуйста, будьте добры: -)

Бест, Патрик Козуб

1 Ответ

1 голос
/ 11 февраля 2011
  1. Единственная угроза безопасности будет, если некоторые элементы списка должны остаться недоступными для выбора.Похоже, что это не так в вашей ситуации.Пользователь уже знает эту информацию, потому что он или она уже выбрали элемент.

    ПРИМЕЧАНИЕ. Если сервер когда-либо что-либо делает с этой информацией и извлекает ее у пользователя, необходимо проверить значение индекса.В противном случае пользователь может изменить его на недопустимый индекс, такой как (-2), и вызвать исключение.

  2. Вы можете сохранить индекс (или связанное значение) в глобальном javascriptпеременная.Если вы избегаете поездки обратно на сервер, .NET на самом деле не играет никакой роли.

...