SlideShare una empresa de Scribd logo
1 de 124
Descargar para leer sin conexión
HTTP и приятели
    HTTP/1.1 200 OK
    Стефан: Кънев
    Николай: Бачийски
    Кога: 22.10.2008
защо изглеждам сънен
днес ще разберат как
           от това се получава




http://fmi.rails-bg.net/topics
това

(с готин transition)
http://
  първият компонент
Request
Response
http://fmi.rails-bg.net/topics


                                            fmi.rails-bg.net
 Пенчо




         TCP връзка към fmi.rails-bg.net на порт 80
nb@creep:~$ wget -S http://fmi.rails-bg/net/topics                      nb@creep:~$ wget -S http://fmi.rails-bg/net/topics
--2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics                  --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics
Resolving fmi.rails-bg... ^C                                            Resolving fmi.rails-bg... ^C
nb@creep:~$ wget -S http://fmi.rails-bg.net/topics                      nb@creep:~$ wget -S http://fmi.rails-bg.net/topics
--2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics                  --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics
Resolving fmi.rails-bg.net... 78.83.99.48                               Resolving fmi.rails-bg.net... 78.83.99.48
Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected.            Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected.
HTTP request sent, awaiting response...                                 HTTP request sent, awaiting response...
  HTTP/1.1 200 OK                                                         HTTP/1.1 200 OK
  Date: Wed, 22 Oct 2008 03:56:28 GMT                                     Date: Wed, 22 Oct 2008 03:56:28 GMT
  Server: Mongrel 1.1.5                                                   Server: Mongrel 1.1.5
  Status: 200 OK                                                          Status: 200 OK
  ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot;                                ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot;
  X-Runtime: 0.04557                                                      X-Runtime: 0.04557
  Content-Type: text/html; charset=utf-8                                  Content-Type: text/html; charset=utf-8
  Content-Length: 5048                                                    Content-Length: 5048
  Cache-Control: private, max-age=0, must-revalidate                      Cache-Control: private, max-age=0, must-revalidate
  Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/     Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/
  Via: 1.0 fmi.rails-bg.net                                               Via: 1.0 fmi.rails-bg.net
  Keep-Alive: timeout=15, max=100                         текстов         Keep-Alive: timeout=15, max=100
  Connection: Keep-Alive                                                  Connection: Keep-Alive

nb@creep:~$ wget -S http://fmi.rails-bg/net/topics                      nb@creep:~$ wget -S http://fmi.rails-bg/net/topics
--2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics                  --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics
Resolving fmi.rails-bg... ^C                                            Resolving fmi.rails-bg... ^C
nb@creep:~$ wget -S http://fmi.rails-bg.net/topics                      nb@creep:~$ wget -S http://fmi.rails-bg.net/topics
--2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics                  --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics
Resolving fmi.rails-bg.net... 78.83.99.48                               Resolving fmi.rails-bg.net... 78.83.99.48
Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected.            Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected.
HTTP request sent, awaiting response...                                 HTTP request sent, awaiting response...
  HTTP/1.1 200 OK                                                         HTTP/1.1 200 OK
  Date: Wed, 22 Oct 2008 03:56:28 GMT                                     Date: Wed, 22 Oct 2008 03:56:28 GMT
  Server: Mongrel 1.1.5                                                   Server: Mongrel 1.1.5
  Status: 200 OK                                                          Status: 200 OK
  ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot;                                ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot;
  X-Runtime: 0.04557                                                      X-Runtime: 0.04557
  Content-Type: text/html; charset=utf-8                                  Content-Type: text/html; charset=utf-8
  Content-Length: 5048                                                    Content-Length: 5048
  Cache-Control: private, max-age=0, must-revalidate                      Cache-Control: private, max-age=0, must-revalidate
  Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/     Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/
  Via: 1.0 fmi.rails-bg.net                                               Via: 1.0 fmi.rails-bg.net
  Keep-Alive: timeout=15, max=100                                         Keep-Alive: timeout=15, max=100
  Connection: Keep-Alive                                                  Connection: Keep-Alive
не е binary
Request
GET   /topics   ?   type=stupid   &   subtype=rockingchair
GET не е хубаво да
променя състоянието
POST
PUT
DELETE
глава / header
Тяло
И да не се сърдят
дамите :-)
глава / header
header-и на заявка
header-и на заявка




GET /topics HTTP/1.1
header-и на заявка




GET /topics HTTP/1.1
Host: fmi.rails-bg.net
header-и на заявка




GET /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
header-и на заявка




GET /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
Accept: text/html, application/xhtml+xml
header-и на заявка




GET /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
Accept: text/html, application/xhtml+xml
header-и на заявка

content-type за тялото
header-и на заявка

         content-type за тялото




POST /topics HTTP/1.1
header-и на заявка

         content-type за тялото




POST /topics HTTP/1.1
Host: fmi.rails-bg.net
header-и на заявка

               content-type за тялото




POST /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
header-и на заявка

                              content-type за тялото




POST /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
Accept: text/html, application/xhtml+xml
header-и на заявка

                              content-type за тялото




POST /topics HTTP/1.1
Host: fmi.rails-bg.net
User-agent: Mozilla/5.0...
Accept: text/html, application/xhtml+xml

Content-Type: application/x-www-form-encoded
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048
1xx Informational       2xx Successes      3xx Redirection
    4xx Client Error        5xx Server Error

200 OK
301 Moved Permanently
404 Not Found
500 Internal Server Error
Тяло
Тяло
POST /topics HTTP/1.1
POST /topics HTTP/1.1
Host: fmi.rails-bg.net
POST /topics HTTP/1.1
Host: fmi.rails-bg.net
Content-Type: application/x-www-form-encoded
POST /topics HTTP/1.1
Host: fmi.rails-bg.net
Content-Type: application/x-www-form-encoded


title=The Best Title&content=...
HTTP/1.1 200 OK
HTTP/1.1 200 OK
Content-Type: text/html
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048


<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048


<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048


<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
  <head>
HTTP/1.1 200 OK
Content-Type: text/html
Date: Wed, 22 Oct 2008 03:56:28 GMT
Content-Length: 5048


<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
  <head>
    <title>Програмирани с Ruby и Rails...
State
        fmi.rails-bg.net
State
                fmi.rails-bg.net




   /topics




10:01
State
                       fmi.rails-bg.net




   /topics    /tasks




10:01        10:02
State
                                   fmi.rails-bg.net




   /topics    /tasks
                       /topics/5




10:01        10:02           10:03
State
                                   fmi.rails-bg.net




   /topics    /tasks                     /tasks/1
                       /topics/5




10:01        10:02           10:03        10:04
State less
                                   fmi.rails-bg.net




   /topics    /tasks                     /tasks/1
                       /topics/5




10:01        10:02           10:03        10:04
Cookies
Cookies
HTTP/1.1 200 OK
Content-Type: text/html
Set-Cookie: secret=ndrznzvr
Cookies
HTTP/1.1 200 OK
Content-Type: text/html
Set-Cookie: secret=ndrznzvr
Cookies
HTTP/1.1 200 OK
Content-Type: text/html       GET /baba HTTP/1.1
Set-Cookie: secret=ndrznzvr   Host: fmi.rails-bg.net
                              Cookie: secret=ndrznzvr
Cookies
HTTP/1.1 200 OK
Content-Type: text/html       GET /baba HTTP/1.1
Set-Cookie: secret=ndrznzvr   Host: fmi.rails-bg.net
                              Cookie: secret=ndrznzvr
</http>
Content-Type: text/html




<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
  <head>
    <title>Програмирани с Ruby и Rails...
Content-Type: text/html




        HTML
<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
  <head>
    <title>Програмирани с Ruby и Rails...
Content-Type: text/html




XHTML
<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
<html lang='bg' xml:lang='bg'...
  <head>
    <title>Програмирани с Ruby и Rails...
Цел:
съдържание
  на страницата
  (не изгледа, не поведението)
Markup = Маркиране   ± език
Markup = Маркиране     ± език




 <чушка цвят=quot;жълтquot;>
Markup = Маркиране     ± език




 <чушка цвят=quot;жълтquot;>




      </чушка>
Markup = Маркиране     ± език




 <чушка цвят=quot;жълтquot;>




      </чушка>
Смисъл,
структура
<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot; quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtdquot;>


<html>
  <head>
    ?
  </head>
  <body>
    ?
  </body>
</html>
<head>
  <title>Моето любимо коте</title>
  <meta name=”generator” content=”моите две ръце” />
</head>
<body>
  <h1>Моето коте &mdash; Кънчо</h1>
  <p>Здрасти, това е страницата, поветена на моето любимо
коте. Тук ще намерите много информация, снимки и връзки за
него.</p>
  <ul class=quot;menuquot;>
    <li><a href=quot;/bioquot;>Биография на Кънчо</a></li>
    <li><a href=quot;/photosquot;>Снимки</a></li>
  </ul>
  <img src=quot;/kuncho_best.jpgquot; alt=quot;Кънчо -- най-красивquot;/>
</body>
Is YOUR HTML valid?
http://www.w3.org/TR/html401/   http://validator.w3.org/   http://www.w3.org/TR/xhtml1/
Сам е скучно, искам в
          група




Сам е скучно
И таговете са по-добре
с компания
<div>
    каквито си искате тагове
</div>

<span>
    почти каквито искате
</span>
Кой съм аз и за какво
се боря? Как да ме
намериш?
Разпознаване
    <div id=quot;footerquot;>
    <ul class=quot;menuquot;>
<div class=quot;menu replyquot;>

  атрибути за всички тагове
Формуляри
<form action=quot;/topicsquot; method=quot;postquot;>

  <label for=quot;fullnamequot;>Full name</label>
  <input name=quot;fullnamequot; id=quot;fullnamequot; type=quot;textquot; />

  <input name=quot;tickquot; type=quot;checkboxquot; checked=quot;checkedquot; />

  <textarea name=quot;freetextquot;>Feed me!</textarea>

  <select name=quot;projectquot;>
    <option value=quot;easyquot;>The hard one</option>
    <option value=quot;hardquot; selected=quot;selectedquot;>The easy one</option>
  </select>

  <input type=quot;submitquot; value=quot;Run, Lolaquot;>

</form>
За някои е важно
всичко да е красиво
Дори отвътре да е
развалено
Красота ⊂ HTML + CSS
       В този курс ще се
       интересуваме от
       вътрешната красота,
       но ако все пак ви
       интересува
Стандартен изглед на някои HTML
             тагове

                     <h1>,
<h2>
                        <strong>
                          <em>
                       •<li></li>
                           <a>

                           <p>

     <div>,
<p>,
<form>
с
кутийка
и
нов
ред
около
тях
       <a>,
<span>,
<strong>,
<img>
един
след
друг
CSS
Cascading Style Sheets
    http://www.w3.org/Style/CSS/

     http://w3schools.com/css/
         http://jigsaw.w3.org/css-validator/
Как си пазим съдържанието,
което трябва да структурираме в
            HTML?
Опитвали сте се сами
да мислите файлови
формати и интерфейс
за достъп до данните
си?
Релационен модел
Котки
релация ≈ таблица
Котки
релация ≈ таблица




                    ID      Име        Порода

                    1    Macorana3f   Сомалийска

                    2    Стрептокок    Сиамска

                    3     Шрапнел     Сомалийска

                    4      Рекса      Мейн Куун
Котки
релация ≈ таблица
                         Първичен ключ/PK




                    ID                      Име      Порода

                    1                 Macorana3f    Сомалийска

                    2                Стрептокок      Сиамска

                    3                  Шрапнел      Сомалийска

                    4                       Рекса   Мейн Куун
Котки
      релация ≈ таблица
                               Първичен ключ/PK




                          ID                      Име      Порода

Запис/ред                 1                 Macorana3f    Сомалийска

                          2                Стрептокок      Сиамска

                          3                  Шрапнел      Сомалийска

                          4                       Рекса   Мейн Куун
Нормализация
           ≈
липса на повторения на
         данни
Пак далеч от теорията
ID      Име         Порода

1    Macorana3f   Сомалийска

2    Стрептокок     Сиамска

3     Шрапнел     Сомалийска

4      Рекса       Мейн Куун
Котки




        Породи
Котки
 ID      Име       ID на Порода

  1   Macorana3f        2
  2   Стрептокок        1
  3    Шрапнел          2
  4     Рекса           3




                              Породи
Котки
 ID      Име       ID на Порода

  1   Macorana3f        2
  2   Стрептокок        1
  3    Шрапнел          2
  4     Рекса           3


                                  ID    Порода
                                   1    Сиамска
                                   2   Сомалийска
                                   3   Мейн Куун

                              Породи
Котки
  ID        Име       ID на Порода

   1     Macorana3f        2
   2     Стрептокок        1
   3      Шрапнел          2
   4       Рекса           3

Котка към Порода,
 много към едно                      ID    Порода
                                      1    Сиамска
                                      2   Сомалийска
                                      3   Мейн Куун

                                 Породи
Котки
     ID        Име        ID на Порода

      1     Macorana3f         2
      2     Стрептокок         1
      3      Шрапнел           2
      4       Рекса            3

  Котка към Порода,
   много към едно                        ID    Порода
                                          1    Сиамска
От всяка порода може да                   2   Сомалийска
  има много котки, една                   3   Мейн Куун
 котка е от една порода
                                     Породи
Мелези?
Котка към Порода,
 много към много
Котка към Порода,
  много към много

От всяка порода може да има
много котки, една котка може
   да е от много породи
Котки
 ID       Име
  1    Macorana3f
  2    Стрептокок
  3     Шрапнел
  4      Рекса




 Котка към Порода,
  много към много

От всяка порода може да има
много котки, една котка може
   да е от много породи
Котки
 ID       Име
  1    Macorana3f
  2    Стрептокок
  3     Шрапнел
  4      Рекса




 Котка към Порода,
  много към много              ID    Порода
                                1    Сиамска
                                2   Сомалийска
От всяка порода може да има     3   Мейн Куун
много котки, една котка може
   да е от много породи         Породи
Котки към породи
  Котки
                                         ID на     ID на
 ID       Име                   ID
                                         котка    порода
  1    Macorana3f               1         1          1
                                2         1          2
  2    Стрептокок
                                3         2          1
  3     Шрапнел                 4         3          2
  4      Рекса                  5         4          4




 Котка към Порода,
  много към много                   ID            Порода
                                     1            Сиамска
                                     2           Сомалийска
От всяка порода може да има          3           Мейн Куун
много котки, една котка може
   да е от много породи              Породи
SQL
Structured Query Language
SELECT * FROM kittens

       SELECT * FROM kittens WHERE age < 2

SELECT id, name FROM kittens WHERE name LIKE ‘Brr%’
UPDATE kittens SET age = age +1 WHERE name =
               ‘Birthday Kitten’
INSERT INTO kittens (id, name, age) VALUES (7, ‘Pinko’, 1)
     INSERT INTO kittens (name) VALUES (‘Pinko’)
NULL
NULL
SELECT NULL + 2
    →NULL
Задача: име и порода за всяка
            котка?
    Заявка върху повече от една таблица?
ID         Име        ID на Порода

  1      Macorana3f         2
  2      Стрептокок         1
  3       Шрапнел           2
  4        Рекса            3



Задача: име и порода за всяка
            котка?
      Заявка върху повече от една таблица?
ID         Име        ID на Порода   ID      Порода
  1      Macorana3f         2          1      Сиамска
  2      Стрептокок         1          2     Сомалийска
  3       Шрапнел           2          3     Мейн Куун
  4        Рекса            3



Задача: име и порода за всяка
            котка?
      Заявка върху повече от една таблица?
JOIN
декартово произведение на две таблици
JOIN
  декартово произведение на две таблици
ID на котка      Име       ID на Порода   ID на порода      Порода

     1        Macorana3f        2              1          Сиамска
     2        Стрептокок        1              2         Сомалийска
     3         Шрапнел          2              3         Мейн Куун
     4          Рекса           3              1          Сиамска
     1        Macorana3f        2              2         Сомалийска
     2        Стрептокок        1              3         Мейн Куун
     3         Шрапнел          2              1          Сиамска
     4          Рекса           3              2         Сомалийска
     1        Macorana3f        2              3         Мейн Куун
     2        Стрептокок        1              1          Сиамска
     3         Шрапнел          2              2         Сомалийска
     4          Рекса           3              3         Мейн Куун
When a bike is stolen,
   a fairy dies

Más contenido relacionado

La actualidad más candente

Memento: TimeGates, TimeBundles, and TimeMaps
Memento: TimeGates, TimeBundles, and TimeMapsMemento: TimeGates, TimeBundles, and TimeMaps
Memento: TimeGates, TimeBundles, and TimeMapsMichael Nelson
 
From zero to almost rails in about a million slides...
From zero to almost rails in about a million slides...From zero to almost rails in about a million slides...
From zero to almost rails in about a million slides...david_e_worth
 
Your Presentation Name Here
Your Presentation Name HereYour Presentation Name Here
Your Presentation Name HereFreedSoftwares
 
Building an Automated Behavioral Malware Analysis Environment using Free and ...
Building an Automated Behavioral Malware Analysis Environment using Free and ...Building an Automated Behavioral Malware Analysis Environment using Free and ...
Building an Automated Behavioral Malware Analysis Environment using Free and ...Jim Clausing
 
How IT works - Joomladay Germany 2014
How IT works - Joomladay Germany 2014How IT works - Joomladay Germany 2014
How IT works - Joomladay Germany 2014Peter Martin
 
how to use fiddler (Ver eng)
how to use fiddler (Ver eng)how to use fiddler (Ver eng)
how to use fiddler (Ver eng)용진 조
 
1تقرير
1تقرير1تقرير
1تقريرtech1010
 

La actualidad más candente (12)

Background noise of the Internet
Background noise of the InternetBackground noise of the Internet
Background noise of the Internet
 
CloudKit
CloudKitCloudKit
CloudKit
 
Memento: TimeGates, TimeBundles, and TimeMaps
Memento: TimeGates, TimeBundles, and TimeMapsMemento: TimeGates, TimeBundles, and TimeMaps
Memento: TimeGates, TimeBundles, and TimeMaps
 
From zero to almost rails in about a million slides...
From zero to almost rails in about a million slides...From zero to almost rails in about a million slides...
From zero to almost rails in about a million slides...
 
Your Presentation Name Here
Your Presentation Name HereYour Presentation Name Here
Your Presentation Name Here
 
Client–server model
Client–server modelClient–server model
Client–server model
 
Building an Automated Behavioral Malware Analysis Environment using Free and ...
Building an Automated Behavioral Malware Analysis Environment using Free and ...Building an Automated Behavioral Malware Analysis Environment using Free and ...
Building an Automated Behavioral Malware Analysis Environment using Free and ...
 
How IT works - Joomladay Germany 2014
How IT works - Joomladay Germany 2014How IT works - Joomladay Germany 2014
How IT works - Joomladay Germany 2014
 
Magnet links in firefox [solved]
Magnet links in firefox [solved]Magnet links in firefox [solved]
Magnet links in firefox [solved]
 
how to use fiddler (Ver eng)
how to use fiddler (Ver eng)how to use fiddler (Ver eng)
how to use fiddler (Ver eng)
 
How Web Pages Work
How Web Pages Work How Web Pages Work
How Web Pages Work
 
1تقرير
1تقرير1تقرير
1تقرير
 

Destacado (11)

1. Въведение в Ruby
1. Въведение в Ruby1. Въведение в Ruby
1. Въведение в Ruby
 
0. За курса, Ruby и Rails
0. За курса, Ruby и Rails0. За курса, Ruby и Rails
0. За курса, Ruby и Rails
 
Debugging Habits
Debugging HabitsDebugging Habits
Debugging Habits
 
Защо Ruby on Rails
Защо Ruby on RailsЗащо Ruby on Rails
Защо Ruby on Rails
 
Windows 7 Developer Overview
Windows 7 Developer OverviewWindows 7 Developer Overview
Windows 7 Developer Overview
 
Nature of Chase
Nature of ChaseNature of Chase
Nature of Chase
 
Informatiethema's: naar het buitenland
Informatiethema's: naar het buitenlandInformatiethema's: naar het buitenland
Informatiethema's: naar het buitenland
 
Doorlichting JIPS 2009
Doorlichting JIPS 2009Doorlichting JIPS 2009
Doorlichting JIPS 2009
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2
 
Ecophon - Akusto - FR
Ecophon - Akusto - FREcophon - Akusto - FR
Ecophon - Akusto - FR
 
Presentación estructura
Presentación estructuraPresentación estructura
Presentación estructura
 

Similar a 5. HTTP и приятели

Making the Most of HTTP In Your Apps
Making the Most of HTTP In Your AppsMaking the Most of HTTP In Your Apps
Making the Most of HTTP In Your AppsBen Ramsey
 
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."Dongwook Lee
 
Frontend Performance - Web Entwickler Forum
Frontend Performance - Web Entwickler ForumFrontend Performance - Web Entwickler Forum
Frontend Performance - Web Entwickler ForumPierre Spring
 
ReST-ful Resource Management
ReST-ful Resource ManagementReST-ful Resource Management
ReST-ful Resource ManagementJoe Davis
 
DEF CON 27- ALBINOWAX - http desync attacks
DEF CON 27- ALBINOWAX - http desync attacksDEF CON 27- ALBINOWAX - http desync attacks
DEF CON 27- ALBINOWAX - http desync attacksFelipe Prado
 
Speedy App: Frontend Performance Considerations
Speedy App: Frontend Performance ConsiderationsSpeedy App: Frontend Performance Considerations
Speedy App: Frontend Performance ConsiderationsPierre Spring
 
HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?Alessandro Nadalin
 
20190516 web security-basic
20190516 web security-basic20190516 web security-basic
20190516 web security-basicMksYi
 
Developing cacheable PHP applications - PHPLimburgBE 2018
Developing cacheable PHP applications - PHPLimburgBE 2018Developing cacheable PHP applications - PHPLimburgBE 2018
Developing cacheable PHP applications - PHPLimburgBE 2018Thijs Feryn
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folksNicolas Martignole
 
Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014Arun Gupta
 
HTTP/2: What no one is telling you
HTTP/2: What no one is telling youHTTP/2: What no one is telling you
HTTP/2: What no one is telling youFastly
 
Computer Networks: An Introduction
Computer Networks: An IntroductionComputer Networks: An Introduction
Computer Networks: An Introductionsanand0
 
HTTP/2 and Java: Current Status
HTTP/2 and Java: Current StatusHTTP/2 and Java: Current Status
HTTP/2 and Java: Current StatusSimone Bordet
 
Developing cacheable PHP applications - Confoo 2018
Developing cacheable PHP applications - Confoo 2018Developing cacheable PHP applications - Confoo 2018
Developing cacheable PHP applications - Confoo 2018Thijs Feryn
 
Interactive web. O rly?
Interactive web. O rly?Interactive web. O rly?
Interactive web. O rly?timbc
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance WebsitesParham
 

Similar a 5. HTTP и приятели (20)

Making the Most of HTTP In Your Apps
Making the Most of HTTP In Your AppsMaking the Most of HTTP In Your Apps
Making the Most of HTTP In Your Apps
 
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
IBM dwLive, "Internet & HTTP - 잃어버린 패킷을 찾아서..."
 
Frontend Performance - Web Entwickler Forum
Frontend Performance - Web Entwickler ForumFrontend Performance - Web Entwickler Forum
Frontend Performance - Web Entwickler Forum
 
ReST-ful Resource Management
ReST-ful Resource ManagementReST-ful Resource Management
ReST-ful Resource Management
 
DEF CON 27- ALBINOWAX - http desync attacks
DEF CON 27- ALBINOWAX - http desync attacksDEF CON 27- ALBINOWAX - http desync attacks
DEF CON 27- ALBINOWAX - http desync attacks
 
Speedy App: Frontend Performance Considerations
Speedy App: Frontend Performance ConsiderationsSpeedy App: Frontend Performance Considerations
Speedy App: Frontend Performance Considerations
 
HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?HTTP colon slash slash: the end of the road?
HTTP colon slash slash: the end of the road?
 
20190516 web security-basic
20190516 web security-basic20190516 web security-basic
20190516 web security-basic
 
Caching on the Edge
Caching on the EdgeCaching on the Edge
Caching on the Edge
 
Developing cacheable PHP applications - PHPLimburgBE 2018
Developing cacheable PHP applications - PHPLimburgBE 2018Developing cacheable PHP applications - PHPLimburgBE 2018
Developing cacheable PHP applications - PHPLimburgBE 2018
 
WWW and HTTP
WWW and HTTPWWW and HTTP
WWW and HTTP
 
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc  2015 HTTP 1, HTTP 2 and folksDevoxx Maroc  2015 HTTP 1, HTTP 2 and folks
Devoxx Maroc 2015 HTTP 1, HTTP 2 and folks
 
Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014Nuts and Bolts of WebSocket Devoxx 2014
Nuts and Bolts of WebSocket Devoxx 2014
 
HTTP/2: What no one is telling you
HTTP/2: What no one is telling youHTTP/2: What no one is telling you
HTTP/2: What no one is telling you
 
Computer Networks: An Introduction
Computer Networks: An IntroductionComputer Networks: An Introduction
Computer Networks: An Introduction
 
Speed = $$$
Speed = $$$Speed = $$$
Speed = $$$
 
HTTP/2 and Java: Current Status
HTTP/2 and Java: Current StatusHTTP/2 and Java: Current Status
HTTP/2 and Java: Current Status
 
Developing cacheable PHP applications - Confoo 2018
Developing cacheable PHP applications - Confoo 2018Developing cacheable PHP applications - Confoo 2018
Developing cacheable PHP applications - Confoo 2018
 
Interactive web. O rly?
Interactive web. O rly?Interactive web. O rly?
Interactive web. O rly?
 
High Performance Websites
High Performance WebsitesHigh Performance Websites
High Performance Websites
 

Más de Stefan Kanev

Как блогът ми ме направи по-добър професионалист
Как блогът ми ме направи по-добър професионалистКак блогът ми ме направи по-добър професионалист
Как блогът ми ме направи по-добър професионалистStefan Kanev
 
Щастливият програмист 2.0
Щастливият програмист 2.0Щастливият програмист 2.0
Щастливият програмист 2.0Stefan Kanev
 
Пак ли този Rails?
Пак ли този Rails?Пак ли този Rails?
Пак ли този Rails?Stefan Kanev
 
The Happy Programmer
The Happy ProgrammerThe Happy Programmer
The Happy ProgrammerStefan Kanev
 
ФМИ Python: Agile & Friends
ФМИ Python: Agile & FriendsФМИ Python: Agile & Friends
ФМИ Python: Agile & FriendsStefan Kanev
 
Behavior-Driven Development с RSpec и Cucumber
Behavior-Driven Development с RSpec и CucumberBehavior-Driven Development с RSpec и Cucumber
Behavior-Driven Development с RSpec и CucumberStefan Kanev
 
Test-Driven Development + Refactoring
Test-Driven Development + RefactoringTest-Driven Development + Refactoring
Test-Driven Development + RefactoringStefan Kanev
 
4. Метапрограмиране
4. Метапрограмиране4. Метапрограмиране
4. МетапрограмиранеStefan Kanev
 
3. Обекти и класове
3. Обекти и класове3. Обекти и класове
3. Обекти и класовеStefan Kanev
 
2. Функционални Закачки
2. Функционални Закачки2. Функционални Закачки
2. Функционални ЗакачкиStefan Kanev
 

Más de Stefan Kanev (14)

Ruby 0 2012
Ruby 0 2012Ruby 0 2012
Ruby 0 2012
 
Ruby 0
Ruby 0Ruby 0
Ruby 0
 
Защо MongoDB?
Защо MongoDB?Защо MongoDB?
Защо MongoDB?
 
Как блогът ми ме направи по-добър професионалист
Как блогът ми ме направи по-добър професионалистКак блогът ми ме направи по-добър професионалист
Как блогът ми ме направи по-добър професионалист
 
Щастливият програмист 2.0
Щастливият програмист 2.0Щастливият програмист 2.0
Щастливият програмист 2.0
 
Пак ли този Rails?
Пак ли този Rails?Пак ли този Rails?
Пак ли този Rails?
 
The Happy Programmer
The Happy ProgrammerThe Happy Programmer
The Happy Programmer
 
ФМИ Python: Agile & Friends
ФМИ Python: Agile & FriendsФМИ Python: Agile & Friends
ФМИ Python: Agile & Friends
 
Behavior-Driven Development с RSpec и Cucumber
Behavior-Driven Development с RSpec и CucumberBehavior-Driven Development с RSpec и Cucumber
Behavior-Driven Development с RSpec и Cucumber
 
Test-Driven Development + Refactoring
Test-Driven Development + RefactoringTest-Driven Development + Refactoring
Test-Driven Development + Refactoring
 
за Ruby
за Rubyза Ruby
за Ruby
 
4. Метапрограмиране
4. Метапрограмиране4. Метапрограмиране
4. Метапрограмиране
 
3. Обекти и класове
3. Обекти и класове3. Обекти и класове
3. Обекти и класове
 
2. Функционални Закачки
2. Функционални Закачки2. Функционални Закачки
2. Функционални Закачки
 

Último

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

5. HTTP и приятели

  • 1. HTTP и приятели HTTP/1.1 200 OK Стефан: Кънев Николай: Бачийски Кога: 22.10.2008
  • 3. днес ще разберат как от това се получава http://fmi.rails-bg.net/topics
  • 5. http:// първият компонент
  • 8. http://fmi.rails-bg.net/topics fmi.rails-bg.net Пенчо TCP връзка към fmi.rails-bg.net на порт 80
  • 9. nb@creep:~$ wget -S http://fmi.rails-bg/net/topics nb@creep:~$ wget -S http://fmi.rails-bg/net/topics --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics Resolving fmi.rails-bg... ^C Resolving fmi.rails-bg... ^C nb@creep:~$ wget -S http://fmi.rails-bg.net/topics nb@creep:~$ wget -S http://fmi.rails-bg.net/topics --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics Resolving fmi.rails-bg.net... 78.83.99.48 Resolving fmi.rails-bg.net... 78.83.99.48 Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected. Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected. HTTP request sent, awaiting response... HTTP request sent, awaiting response... HTTP/1.1 200 OK HTTP/1.1 200 OK Date: Wed, 22 Oct 2008 03:56:28 GMT Date: Wed, 22 Oct 2008 03:56:28 GMT Server: Mongrel 1.1.5 Server: Mongrel 1.1.5 Status: 200 OK Status: 200 OK ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot; ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot; X-Runtime: 0.04557 X-Runtime: 0.04557 Content-Type: text/html; charset=utf-8 Content-Type: text/html; charset=utf-8 Content-Length: 5048 Content-Length: 5048 Cache-Control: private, max-age=0, must-revalidate Cache-Control: private, max-age=0, must-revalidate Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/ Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/ Via: 1.0 fmi.rails-bg.net Via: 1.0 fmi.rails-bg.net Keep-Alive: timeout=15, max=100 текстов Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Connection: Keep-Alive nb@creep:~$ wget -S http://fmi.rails-bg/net/topics nb@creep:~$ wget -S http://fmi.rails-bg/net/topics --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics --2008-10-22 06:56:15-- http://fmi.rails-bg/net/topics Resolving fmi.rails-bg... ^C Resolving fmi.rails-bg... ^C nb@creep:~$ wget -S http://fmi.rails-bg.net/topics nb@creep:~$ wget -S http://fmi.rails-bg.net/topics --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics --2008-10-22 06:56:27-- http://fmi.rails-bg.net/topics Resolving fmi.rails-bg.net... 78.83.99.48 Resolving fmi.rails-bg.net... 78.83.99.48 Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected. Connecting to fmi.rails-bg.net|78.83.99.48|:80... connected. HTTP request sent, awaiting response... HTTP request sent, awaiting response... HTTP/1.1 200 OK HTTP/1.1 200 OK Date: Wed, 22 Oct 2008 03:56:28 GMT Date: Wed, 22 Oct 2008 03:56:28 GMT Server: Mongrel 1.1.5 Server: Mongrel 1.1.5 Status: 200 OK Status: 200 OK ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot; ETag: quot;d442009ec5c720c14ceb0d2be6e4ccf8quot; X-Runtime: 0.04557 X-Runtime: 0.04557 Content-Type: text/html; charset=utf-8 Content-Type: text/html; charset=utf-8 Content-Length: 5048 Content-Length: 5048 Cache-Control: private, max-age=0, must-revalidate Cache-Control: private, max-age=0, must-revalidate Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/ Set-Cookie: _trane_session=ee47058b784246a19b9e0efc6762fc9d; path=/ Via: 1.0 fmi.rails-bg.net Via: 1.0 fmi.rails-bg.net Keep-Alive: timeout=15, max=100 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Connection: Keep-Alive
  • 12. GET /topics ? type=stupid & subtype=rockingchair
  • 13. GET не е хубаво да променя състоянието
  • 14. POST
  • 15. PUT
  • 19. И да не се сърдят дамите :-)
  • 23. header-и на заявка GET /topics HTTP/1.1 Host: fmi.rails-bg.net
  • 24. header-и на заявка GET /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0...
  • 25. header-и на заявка GET /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0... Accept: text/html, application/xhtml+xml
  • 26. header-и на заявка GET /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0... Accept: text/html, application/xhtml+xml
  • 28. header-и на заявка content-type за тялото POST /topics HTTP/1.1
  • 29. header-и на заявка content-type за тялото POST /topics HTTP/1.1 Host: fmi.rails-bg.net
  • 30. header-и на заявка content-type за тялото POST /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0...
  • 31. header-и на заявка content-type за тялото POST /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0... Accept: text/html, application/xhtml+xml
  • 32. header-и на заявка content-type за тялото POST /topics HTTP/1.1 Host: fmi.rails-bg.net User-agent: Mozilla/5.0... Accept: text/html, application/xhtml+xml Content-Type: application/x-www-form-encoded
  • 33. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048
  • 34. 1xx Informational 2xx Successes 3xx Redirection 4xx Client Error 5xx Server Error 200 OK 301 Moved Permanently 404 Not Found 500 Internal Server Error
  • 37.
  • 39. POST /topics HTTP/1.1 Host: fmi.rails-bg.net
  • 40. POST /topics HTTP/1.1 Host: fmi.rails-bg.net Content-Type: application/x-www-form-encoded
  • 41. POST /topics HTTP/1.1 Host: fmi.rails-bg.net Content-Type: application/x-www-form-encoded title=The Best Title&content=...
  • 42.
  • 45. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT
  • 46. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048
  • 47. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048 <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML...
  • 48. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048 <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'...
  • 49. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048 <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'... <head>
  • 50. HTTP/1.1 200 OK Content-Type: text/html Date: Wed, 22 Oct 2008 03:56:28 GMT Content-Length: 5048 <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'... <head> <title>Програмирани с Ruby и Rails...
  • 51. State fmi.rails-bg.net
  • 52. State fmi.rails-bg.net /topics 10:01
  • 53. State fmi.rails-bg.net /topics /tasks 10:01 10:02
  • 54. State fmi.rails-bg.net /topics /tasks /topics/5 10:01 10:02 10:03
  • 55. State fmi.rails-bg.net /topics /tasks /tasks/1 /topics/5 10:01 10:02 10:03 10:04
  • 56. State less fmi.rails-bg.net /topics /tasks /tasks/1 /topics/5 10:01 10:02 10:03 10:04
  • 57.
  • 59. Cookies HTTP/1.1 200 OK Content-Type: text/html Set-Cookie: secret=ndrznzvr
  • 60. Cookies HTTP/1.1 200 OK Content-Type: text/html Set-Cookie: secret=ndrznzvr
  • 61. Cookies HTTP/1.1 200 OK Content-Type: text/html GET /baba HTTP/1.1 Set-Cookie: secret=ndrznzvr Host: fmi.rails-bg.net Cookie: secret=ndrznzvr
  • 62. Cookies HTTP/1.1 200 OK Content-Type: text/html GET /baba HTTP/1.1 Set-Cookie: secret=ndrznzvr Host: fmi.rails-bg.net Cookie: secret=ndrznzvr
  • 64. Content-Type: text/html <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'... <head> <title>Програмирани с Ruby и Rails...
  • 65. Content-Type: text/html HTML <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'... <head> <title>Програмирани с Ruby и Rails...
  • 66. Content-Type: text/html XHTML <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML... <html lang='bg' xml:lang='bg'... <head> <title>Програмирани с Ruby и Rails...
  • 67. Цел: съдържание на страницата (не изгледа, не поведението)
  • 69. Markup = Маркиране ± език <чушка цвят=quot;жълтquot;>
  • 70. Markup = Маркиране ± език <чушка цвят=quot;жълтquot;> </чушка>
  • 71. Markup = Маркиране ± език <чушка цвят=quot;жълтquot;> </чушка>
  • 73. <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot; quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtdquot;> <html> <head> ? </head> <body> ? </body> </html>
  • 74. <head> <title>Моето любимо коте</title> <meta name=”generator” content=”моите две ръце” /> </head>
  • 75. <body> <h1>Моето коте &mdash; Кънчо</h1> <p>Здрасти, това е страницата, поветена на моето любимо коте. Тук ще намерите много информация, снимки и връзки за него.</p> <ul class=quot;menuquot;> <li><a href=quot;/bioquot;>Биография на Кънчо</a></li> <li><a href=quot;/photosquot;>Снимки</a></li> </ul> <img src=quot;/kuncho_best.jpgquot; alt=quot;Кънчо -- най-красивquot;/> </body>
  • 76. Is YOUR HTML valid? http://www.w3.org/TR/html401/ http://validator.w3.org/ http://www.w3.org/TR/xhtml1/
  • 77. Сам е скучно, искам в група Сам е скучно
  • 78. И таговете са по-добре с компания
  • 79. <div> каквито си искате тагове </div> <span> почти каквито искате </span>
  • 80. Кой съм аз и за какво се боря? Как да ме намериш?
  • 81. Разпознаване <div id=quot;footerquot;> <ul class=quot;menuquot;> <div class=quot;menu replyquot;> атрибути за всички тагове
  • 82.
  • 83. Формуляри <form action=quot;/topicsquot; method=quot;postquot;> <label for=quot;fullnamequot;>Full name</label> <input name=quot;fullnamequot; id=quot;fullnamequot; type=quot;textquot; /> <input name=quot;tickquot; type=quot;checkboxquot; checked=quot;checkedquot; /> <textarea name=quot;freetextquot;>Feed me!</textarea> <select name=quot;projectquot;> <option value=quot;easyquot;>The hard one</option> <option value=quot;hardquot; selected=quot;selectedquot;>The easy one</option> </select> <input type=quot;submitquot; value=quot;Run, Lolaquot;> </form>
  • 84. За някои е важно всичко да е красиво
  • 85. Дори отвътре да е развалено
  • 86. Красота ⊂ HTML + CSS В този курс ще се интересуваме от вътрешната красота, но ако все пак ви интересува
  • 87. Стандартен изглед на някои HTML тагове <h1>,
<h2> <strong> <em> •<li></li> <a> <p> <div>,
<p>,
<form>
с
кутийка
и
нов
ред
около
тях <a>,
<span>,
<strong>,
<img>
един
след
друг
  • 88. CSS Cascading Style Sheets http://www.w3.org/Style/CSS/ http://w3schools.com/css/ http://jigsaw.w3.org/css-validator/
  • 89.
  • 90. Как си пазим съдържанието, което трябва да структурираме в HTML?
  • 91. Опитвали сте се сами да мислите файлови формати и интерфейс за достъп до данните си?
  • 94. Котки релация ≈ таблица ID Име Порода 1 Macorana3f Сомалийска 2 Стрептокок Сиамска 3 Шрапнел Сомалийска 4 Рекса Мейн Куун
  • 95. Котки релация ≈ таблица Първичен ключ/PK ID Име Порода 1 Macorana3f Сомалийска 2 Стрептокок Сиамска 3 Шрапнел Сомалийска 4 Рекса Мейн Куун
  • 96. Котки релация ≈ таблица Първичен ключ/PK ID Име Порода Запис/ред 1 Macorana3f Сомалийска 2 Стрептокок Сиамска 3 Шрапнел Сомалийска 4 Рекса Мейн Куун
  • 97. Нормализация ≈ липса на повторения на данни Пак далеч от теорията
  • 98.
  • 99. ID Име Порода 1 Macorana3f Сомалийска 2 Стрептокок Сиамска 3 Шрапнел Сомалийска 4 Рекса Мейн Куун
  • 100. Котки Породи
  • 101. Котки ID Име ID на Порода 1 Macorana3f 2 2 Стрептокок 1 3 Шрапнел 2 4 Рекса 3 Породи
  • 102. Котки ID Име ID на Порода 1 Macorana3f 2 2 Стрептокок 1 3 Шрапнел 2 4 Рекса 3 ID Порода 1 Сиамска 2 Сомалийска 3 Мейн Куун Породи
  • 103. Котки ID Име ID на Порода 1 Macorana3f 2 2 Стрептокок 1 3 Шрапнел 2 4 Рекса 3 Котка към Порода, много към едно ID Порода 1 Сиамска 2 Сомалийска 3 Мейн Куун Породи
  • 104. Котки ID Име ID на Порода 1 Macorana3f 2 2 Стрептокок 1 3 Шрапнел 2 4 Рекса 3 Котка към Порода, много към едно ID Порода 1 Сиамска От всяка порода може да 2 Сомалийска има много котки, една 3 Мейн Куун котка е от една порода Породи
  • 106.
  • 107. Котка към Порода, много към много
  • 108. Котка към Порода, много към много От всяка порода може да има много котки, една котка може да е от много породи
  • 109. Котки ID Име 1 Macorana3f 2 Стрептокок 3 Шрапнел 4 Рекса Котка към Порода, много към много От всяка порода може да има много котки, една котка може да е от много породи
  • 110. Котки ID Име 1 Macorana3f 2 Стрептокок 3 Шрапнел 4 Рекса Котка към Порода, много към много ID Порода 1 Сиамска 2 Сомалийска От всяка порода може да има 3 Мейн Куун много котки, една котка може да е от много породи Породи
  • 111. Котки към породи Котки ID на ID на ID Име ID котка порода 1 Macorana3f 1 1 1 2 1 2 2 Стрептокок 3 2 1 3 Шрапнел 4 3 2 4 Рекса 5 4 4 Котка към Порода, много към много ID Порода 1 Сиамска 2 Сомалийска От всяка порода може да има 3 Мейн Куун много котки, една котка може да е от много породи Породи
  • 112.
  • 114. SELECT * FROM kittens SELECT * FROM kittens WHERE age < 2 SELECT id, name FROM kittens WHERE name LIKE ‘Brr%’
  • 115. UPDATE kittens SET age = age +1 WHERE name = ‘Birthday Kitten’
  • 116. INSERT INTO kittens (id, name, age) VALUES (7, ‘Pinko’, 1) INSERT INTO kittens (name) VALUES (‘Pinko’)
  • 118. SELECT NULL + 2 →NULL
  • 119. Задача: име и порода за всяка котка? Заявка върху повече от една таблица?
  • 120. ID Име ID на Порода 1 Macorana3f 2 2 Стрептокок 1 3 Шрапнел 2 4 Рекса 3 Задача: име и порода за всяка котка? Заявка върху повече от една таблица?
  • 121. ID Име ID на Порода ID Порода 1 Macorana3f 2 1 Сиамска 2 Стрептокок 1 2 Сомалийска 3 Шрапнел 2 3 Мейн Куун 4 Рекса 3 Задача: име и порода за всяка котка? Заявка върху повече от една таблица?
  • 123. JOIN декартово произведение на две таблици ID на котка Име ID на Порода ID на порода Порода 1 Macorana3f 2 1 Сиамска 2 Стрептокок 1 2 Сомалийска 3 Шрапнел 2 3 Мейн Куун 4 Рекса 3 1 Сиамска 1 Macorana3f 2 2 Сомалийска 2 Стрептокок 1 3 Мейн Куун 3 Шрапнел 2 1 Сиамска 4 Рекса 3 2 Сомалийска 1 Macorana3f 2 3 Мейн Куун 2 Стрептокок 1 1 Сиамска 3 Шрапнел 2 2 Сомалийска 4 Рекса 3 3 Мейн Куун
  • 124. When a bike is stolen, a fairy dies