0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>Теги: python, web-разработка, web, <nav>, <main>, <header>, <footer>, <canvas>, <video>, web storage api, "key-value", localstorage, sessionstorage, webkit</p>
1
<p>Теги: python, web-разработка, web, <nav>, <main>, <header>, <footer>, <canvas>, <video>, web storage api, "key-value", localstorage, sessionstorage, webkit</p>
2
<p>Когда говорят HTML5, то обычно под этим словом понимают новые теги, например,<strong><main></strong>,<strong><nav></strong>,<strong><header></strong>и<strong><footer></strong>. Реже - рисование в<strong><canvas></strong>и проигрывание<strong><video></strong>. И чаще всего обходят стороной<strong>Web storage API</strong>.</p>
2
<p>Когда говорят HTML5, то обычно под этим словом понимают новые теги, например,<strong><main></strong>,<strong><nav></strong>,<strong><header></strong>и<strong><footer></strong>. Реже - рисование в<strong><canvas></strong>и проигрывание<strong><video></strong>. И чаще всего обходят стороной<strong>Web storage API</strong>.</p>
3
<p>Web storage API создано для замены морально устаревших<strong>cookies</strong>, и имеет ряд преимуществ над<strong>cookies</strong>.</p>
3
<p>Web storage API создано для замены морально устаревших<strong>cookies</strong>, и имеет ряд преимуществ над<strong>cookies</strong>.</p>
4
<h2>Рассмотрим данное<strong>JavaScript API</strong>поближе</h2>
4
<h2>Рассмотрим данное<strong>JavaScript API</strong>поближе</h2>
5
<p>- Все<strong>Cookies</strong>хранятся в виде обычной текстовой строки в формате:</p>
5
<p>- Все<strong>Cookies</strong>хранятся в виде обычной текстовой строки в формате:</p>
6
key1=value1; key2=value2;<p>А различные пары "ключ-значение" могут храниться в одной строке. И, да, чтобы достать какое-то значение, необходимо достать все значения и разделять их.<strong>Web storage</strong>тоже хранит значения в виде "key-value", но работать с ним гораздо проще.</p>
6
key1=value1; key2=value2;<p>А различные пары "ключ-значение" могут храниться в одной строке. И, да, чтобы достать какое-то значение, необходимо достать все значения и разделять их.<strong>Web storage</strong>тоже хранит значения в виде "key-value", но работать с ним гораздо проще.</p>
7
<p>- <strong>Cookies</strong>хранятся на стороне клиента и передаются на сервер при каждом запросе! Данные в<strong>Web storage</strong>относятся только к клиентской части и не передаются на сервер.</p>
7
<p>- <strong>Cookies</strong>хранятся на стороне клиента и передаются на сервер при каждом запросе! Данные в<strong>Web storage</strong>относятся только к клиентской части и не передаются на сервер.</p>
8
<p>- <strong>Cookies</strong>имеют время жизни и долгоживущие<strong>Cookies</strong>не пропадут при закрытии окна браузера. Помимо этого нельзя никак привязать время жизни<strong>Сookies</strong>к закрытию окна, что необходимо для организации кэша.<strong>Web Storage</strong>состоит из двух частей -<strong>LocalStorage</strong>и<strong>SessionStorage</strong>. По своей сути они полностью идентичны, c той лишь разницей, что<strong>SessionStorage</strong>пропадёт после закрытия окна браузера.</p>
8
<p>- <strong>Cookies</strong>имеют время жизни и долгоживущие<strong>Cookies</strong>не пропадут при закрытии окна браузера. Помимо этого нельзя никак привязать время жизни<strong>Сookies</strong>к закрытию окна, что необходимо для организации кэша.<strong>Web Storage</strong>состоит из двух частей -<strong>LocalStorage</strong>и<strong>SessionStorage</strong>. По своей сути они полностью идентичны, c той лишь разницей, что<strong>SessionStorage</strong>пропадёт после закрытия окна браузера.</p>
9
<p>- <strong>Cookies</strong>ограничены по размеру - всего 4 Кб. Этого не хватит для хранения даже маленького документа.<strong>Web storage</strong>имеет ограничение в 5 Мб, чего более чем достаточно для хранения документа и/или большого дерева метаданных.</p>
9
<p>- <strong>Cookies</strong>ограничены по размеру - всего 4 Кб. Этого не хватит для хранения даже маленького документа.<strong>Web storage</strong>имеет ограничение в 5 Мб, чего более чем достаточно для хранения документа и/или большого дерева метаданных.</p>
10
<p>А если ограничиться, например, движком<strong>WebKit</strong>, то работу с<strong>Web storage</strong>можно построить по принципам реляционных баз данных. Да, и писать полноценные SQL для работы с этой БД.</p>
10
<p>А если ограничиться, например, движком<strong>WebKit</strong>, то работу с<strong>Web storage</strong>можно построить по принципам реляционных баз данных. Да, и писать полноценные SQL для работы с этой БД.</p>
11
<p><em>Есть вопрос? Напишите в комментариях!</em></p>
11
<p><em>Есть вопрос? Напишите в комментариях!</em></p>
12
12