Я хотел бы использовать zip (), чтобы получить читаемый и простой способ:
result = ''
for cha, chb in zip(u, l):
result += '%s%s' % (cha, chb)
print result
# 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'
Сессии
Сессии хранятся в расчете на пользователя в памяти (или альтернатива Состояние сеанса ) на сервере. Сессии используют cookie ( сеансовый ключ ) для связи пользователя с сессией. Это означает, что никакие "чувствительные" данные не хранятся в cookie на пользовательской машине.
Сессии обычно используются для поддержания состояния, когда Вы перешли через веб-сайт. Однако они могут также использоваться для содержания объектов, к которым обычно получают доступ. , Только если Состояние сеанса установлено на InProc, если установлено на другой режим Session-State , объект должен также сериализуемый.
Session["userName"] = "EvilBoy";
if(Session["userName"] != null)
lblUserName.Text = Session["userName"].ToString();
Cookie
Cookie хранятся в расчете на пользователя на пользовательской машине. Cookie является обычно просто небольшим количеством информации. Cookie обычно используются для простого пользовательского предпочтительного ect цветов настроек. Никакая уязвимая информация никогда не должна храниться в cookie.
Вы никогда не не можете полностью доверительный, что в cookie не вмешался пользователь или вне источника однако, если безопасность является большим беспокойством, и необходимо использовать cookie тогда, можно или зашифровать cookie или установить их, чтобы только быть переданными по SSL. Пользователь может очистить свои cookie в любое время или не разрешить куки в целом, таким образом, Вы не можете рассчитывать на них являющийся там просто, потому что пользователь посетил Ваш сайт в прошлом.
//add a username Cookie
Response.Cookies["userName"].Value = "EvilBoy";
Response.Cookies["userName"].Expires = DateTime.Now.AddDays(10);
//Can Limit a cookie to a certain Domain
Response.Cookies["domain"].Domain = "Stackoverflow.com";
//request a username cookie
if(Request.Cookies["userName"] != null)
lblUserName.Text = Server.HtmlEncode(Request.Cookies["userName"].Value);
заметка на полях
стоит упомянуть, что ASP.NET также поддерживает управление состоянием cookieless
Cookie является клиентским устройством хранения данных Ваших переменных. Это сохранило на клиентской машине браузером физически. Это - объем, широкая машина. Различные пользователи в той же машине могут считать тот же cookie.
из-за этого:
Сессия является серверным устройством хранения данных Ваших переменных. Значение по умолчанию, это сохранило на памяти сервера. Но можно настроить его для хранения в SqlServer. Это - объем, широкий браузер. Тот же пользователь может выполнить два или больше браузера, и каждый браузер имеет свою собственную сессию.
из-за этого:
Cookie является строкой identifaction, сохраненной сервером (у кого есть домен) в браузере пользователя, который посещает сервер/домен.
сессия А является единицей, возможно, переменных, состояния, настройки, в то время как определенный пользователь получает доступ к серверу/домену в определенный период времени. Вся информация о сессии находится в традиционной модели, сохраненной на сервере (!)
, поскольку многие параллельные пользователи могут посетить сервер/домен одновременно, сервер должен быть в состоянии отличить много различных параллельных сессий и всегда присваивать правильную сессию правильному пользователю. (И никакой пользователь не может "украсть" сессию другого использования)
, Это сделано через cookie. Cookie, который хранится в браузере и который должен в этом случае быть случайной комбинацией как s73jsd74df4fdf (таким образом, это не может быть предположено) отправляется по каждому запросу с браузера на сервер, и сервер может присвоить и использовать корректную сессию для своих ответов (просмотры страницы)
, cookie позволяет серверу распознавать браузер/пользователя. Сессия позволяет серверу помнить информацию между различными просмотрами страницы.
Возможны и то, и другое: первичный ключ базы данных хешируется и сохраняется в таблице поиска: затем хеш сохраняется на клиенте в виде файла cookie. После отправки хеш-файла cookie (хахахаха :) ищется соответствующий ему первичный ключ, а остальные детали связываются с ним в другой таблице в базе данных сервера.