50%

🚀

12

-, -. HTTP REST.

Merion Academy


HTTP -, -, .


HTTP?

- -: , .

, , . , , HTTP.

HTTP ( ), (, ) ( ). HTTP- , , HTTP-.


HTTP:

, HTTP, .

-, HTTP , , , , . : .

-, HTTP - , , . HTTP . - TCP/IP.

, TCP/IP - , .

, , HTTPS , HTTP , HTTP + S. , HTTPS HTTP, .

HTTP- . HTTPS, , , TLS/SSL .

SSL - , - .

, TLS/SSL, 443. TLS/SSL , , TLS. , , .

-, Google Facebook, HTTPS - , , , .


HTTP:

, , HTTP.

https://www.github.com, GitHub. Chrome Firefox Firebug, HTTP-, Network. , www.github.com, , - :

Network

, github.com. :

Headers

HTTP

HTTP ( ). (GET, POST, PUT DELETE), , , , , cookie, () .

GitHub, :

  • Request URL: https://github.com/ - URL-
  • Request Method: GET - HTTP. : , GitHub, (GET) .
  • Status Code:200 OK - . 200 , .
  • Remote Address:192.30.252.129:443 - IP- - GitHub, . , 443 ( , HTTPS HTTP).
  • Content-Encoding: gzip - , . GitHub , , , . , Github , .
  • Content-Type: text/HTML; charset = utf-8 - , . , . , , HTML. HTML-. UTF-8, .

, , , . Headers:

  • User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 - , . - , . User-Agent, , -
  • Accept-Encoding: gzip, deflate, sdch - , . , gzip, Github gzip.
  • Accept-Language: en-US, en; q = 0.8 - , -. en .
  • Host: github.com - ,
  • Cookie:_octo=GH1.1.491617779.1446477115; logged_in=yes; dotcom_user=iam-peekay; _gh_sess=somethingFakesomething FakesomethingFakesomethingFakesomethingFakesomethingFakesomethingFakesomethingFakesomethingFake; user_session=FakesomethingFake somethingFakesomethingFakesomethingFake; _ga=9389479283749823749; tz = America% 2FLos_Angeles _ - , - . -. , -, GitHub , dotcom_user=iam-peekay,, GitHub, userid Iam-peekay.

-?

, -. -?

, -, cookie, - .

, www.github.com, cookie, GitHub . cookie, - .

- GitHub cookie , , , .

cookie - , , - cookie.

GitHub -, -, HTTP. , .


HTTP

, ( ), .

HTTP .

. .

Response. GET www.github.com, HTML- www.github.com.

Response

, HTTP. , (, JavaScript ..) www.github.com.

,

HTTP , .


HTTP

HTTP , , URL. URL- . URL- HTTP, , .

URL-:

  • GET http://www.example.com/users ( )
  • POST http://www.example.com/users/a-unique-id ( )
  • PUT http://www.example.com/comments/a-unique-id ( )
  • DELETE http://www.example.com/comments/a-unique-id ( )

, , . GET, POST, PUT DELETE. , HEAD OPTIONS, , .

GET

GET . URL- .

GET , , - . , GET , , .

, GET . , GET URL- , GET, GET , .

GET 200 (), , 404 (NOT FOUND), . ( 404 page URL-.)

404

POST

POST , , . POST (, ) - (http://example.com/users). URL-, .

POST , . , POST .

POST 201 (CREATED) .

PUT

PUT , URL, . PUT . PUT , . , PUT , .

PUT 200 (OK), , 404 (NOT FOUND), .

DELETE

DELETE , URL-. DELETE , , , DELETE, : .

, 404, DELETE , .

DELETE 200 (OK) 404 (NOT FOUND), .

500 ( ), .


REST?

REST.

, RESTful application . , , , HTTP , REST. , HTTP-, , , REST.

REST Representational State Transfer ( ). .

, , -, - HTTP. , REST . , , , , , .

, . :

1. - Uniform interface: , . , :

  • (, URI). (, ) - , (, JSON, HTML). - - .
  • .
  • , , , .
  • HTTP, HTTP-, URL-. HTTP, .
: HTTP , , .

2. - Stateless: , , , (URL, , HTTP HTTP), ( HTTP, HTTP).

: - - , .

, , , .

, . .


HTTP . , , .

RESTful HTTP. , .


>