Мы используем Request.ServerVariables для чтения определенного значения заголовка, добавленного прокси-сервером в заголовке запроса.
Мы можем получить и прочитать искомое значение, используя
Request.ServerVariables.Get(myKey)
// or
Request.ServerVariables[myKey]
но мы замечаем, что когда мы перебираем ключи с помощью
foreach (string key in Request.ServerVariables.AllKeys)
...
мы не получаем искомый ключ!
Внутри документации мы можем прочитать:
Коллекция ServerVariables извлекает значения предопределенных переменных среды и запрашивает информацию заголовка.
Так правильно ли сказать, что Request.ServerVariables.AllKeys не содержит всех ключей и что мы должны использовать индексатор или метод get для проверки наличия ключа?
full list of variables can be found here
. Если вы знаете конкретные переменные, которые вам нужны, было бы более эффективно просто запросить их, чтобы в любом случае перечислить всю коллекцию.
Если вы просто отлаживаете свое веб-приложение, вы увидите полный список, и вы не можете добавить этот список в код (легко), насколько я знаю.
Я ничего не пропустил. Атрибут имени входного элемента
например, вы не получите значение Request.ServerVariables.Get(myKey);
управления с помощью Request.ServerVariables.Get(myKey);
<input type='text' value='Indian' />
вы используете <input name ='country' type='text' value='Indian'/>
и
Request.ServerVariables.Get('country');