Notice
Recent Posts
Recent Comments
Link
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

R136A1

๋ชจ๋“ˆ ์กฐ์‚ฌ ๋ณธ๋ฌธ

PROJECT/๐Ÿงก์›น

๋ชจ๋“ˆ ์กฐ์‚ฌ

r136a1x27 2021. 5. 20. 09:07

http ๋ชจ๋“ˆ

http.client ์ €์ˆ˜์ค€ HTTP ํ”„๋กœํ† ์ฝœ ํด๋ผ์ด์–ธํŠธ(์š”์ฒญ ๋ณด๋‚ด๊ธฐ) / ๊ณ ์ˆ˜์ค€์€ urllib.request ์‚ฌ์šฉ

๊ฐ์ฒด(์ธ์Šคํ„ด์Šค) ์ƒ์„ฑ ์˜ˆ์‹œ

http.client.HTTPConnection(host, port=None, [timeout], source_address=None, blocksize=8192)

c = http.client.HTTPConnection('www.python.org:80', 80)

 

c.connect() # 0. ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ ์ง€์ •๋œ ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•จ(ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์•˜๋‹ค๋ฉด ์š”์ฒญ ์‹œ ์ž๋™์œผ๋กœ ํ˜ธ์ถœ)

 

c.request(method, url, body=None, headers={}, *, encode_chunked=False) # 1. ์š”์ฒญ ๊ตฌ์„ฑํ•˜๊ธฐ

๋”ฐ๋กœ ๋ณด๋‚ด๊ธฐ๋„ ๊ฐ€๋Šฅ

c.putrequest(method, url, skip_host=False, skip_accept_encoding=False) # 1-1. ์„œ๋ฒ„์— ์—ฐ๊ฒฐํ•œ ํ›„ ์ฒซ ๋ฒˆ์งธ ํ˜ธ์ถœ

c.putheader(header, argument[, ...]) # 1-2. ํ—ค๋” ๊ตฌ์„ฑ

c.endheaders(message_body=None, *, encode_chunked=False) # 1-3. ํ—ค๋”์˜ ๋์„ ์•Œ๋ฆฌ๋Š” ๋นˆ ์ค„

c.send(data) # 2. ์š”์ฒญ ๋ณด๋‚ด๊ธฐ

r = c.getresponse() # 3. ์‘๋‹ต ๋ฐ›๊ธฐ

c.close() # 4. ์„œ๋ฒ„๋กœ์˜ ์—ฐ๊ฒฐ ๋‹ซ๊ธฐ

 

๊ฐ์ฒด(์ธ์Šคํ„ด์Šค) ๋ฐ˜ํ™˜ ์˜ˆ์‹œ * ์‚ฌ์šฉ์ž๊ฐ€ ์ธ์Šคํ„ด์Šคํ™” ํ•˜์ง€ ์•Š์Œ

http.client.HTTPResponse(sock, debuglevel=0, method=None, url=None)

client์˜ getresponse๋กœ ๋ฐ›์€ ๊ฒฐ๊ณผ

r.read([amt]) // response body๋‚˜ ๋‹ค์Œ ์ตœ๋Œ€ amt ๋ฐ”์ดํŠธ๋ฅผ ์ฝ๊ณ  ๋ฐ˜ํ™˜

r.readinto(b) // response body์˜ ๋‹ค์Œ ์ตœ๋Œ€ len(b)๋ฐ”์ดํŠธ๋ฅผ ๋ฒ„ํผ b๋กœ ์ฝ๊ณ  ์ฝ์€ ๋ฐ”์ดํŠธ ์ˆ˜ ๋ฐ˜ํ™˜

r.getheader(name, default=None) // header name์˜ ๊ฐ’ ๋ฐ˜ํ™˜(์ผ์น˜ํ•˜๋Š” header์—†์œผ๋ฉด default ๋ฐ˜ํ™˜)

r.getheaders() // (ํ—ค๋”, ๊ฐ’) ํ˜•ํƒœ๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ˜ํ™˜

r.msg // ์‘๋‹ต ํ—ค๋”๋ฅผ ํฌํ•จํ•˜๋Š” HTTPMessage ์ธ์Šคํ„ด์Šค

 

r.version // ์„œ๋ฒ„๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” HTTP ํ”„๋กœํ† ์ฝœ ๋ฒ„์ „ (HTTP/1.1 -> 11)

r.url // ๊ฐ€์ ธ์˜จ ์ž์›์˜ url (*์ผ๋ฐ˜์ ์œผ๋กœ redirection ๋”ฐ๋ผ๊ฐ”๋Š”์ง€ ํŒ๋ณ„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ)

r.header // email.message.EmailMessage ์ธ์Šคํ„ด์Šค ํ˜•์‹์˜ ์‘๋‹ต ํ—ค๋”

r.status // ์„œ๋ฒ„๊ฐ€ ๋ฐ˜ํ™˜ํ•œ ์ƒํƒœ ์ฝ”๋“œ

r.reason // ์„œ๋ฒ„๊ฐ€ ๋ฐ˜ํ™˜ํ•œ ์ด์œ  ๋ฌธ๊ตฌ

 

 

http.server HTTP ์„œ๋ฒ„ ํด๋ž˜์Šค. socketserver์— ๊ธฐ๋ฐ˜์„ ๋‘ 

http.HTTPStatus ์—ฌ๋Ÿฌ HTTP ์ƒํƒœ ์ฝ”๋“œ์™€ ๊ด€๋ จ ๋ฉ”์‹œ์ง€๋ฅผ http.HTTPStatus ์—ด๊ฑฐํ˜•์„ ํ†ตํ•ด ์ •์˜

 

 

urllib.request ๋ชจ๋“ˆ

'PROJECT > ๐Ÿงก์›น' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์Šค๋ฏธ์‹ฑ ๋…ผ๋ฌธ ๋ฆฌ๋ทฐ  (0) 2021.07.10
http redirect ์กฐ์‚ฌ  (0) 2021.05.21
scant3r/xss  (0) 2021.05.04
scant3r/main  (0) 2021.05.04
3์ฃผ_์›น ์Šค์บ๋„ˆ ๊ธฐ์ดˆ ์ž๋ฃŒ ์กฐ์‚ฌ  (0) 2021.04.10
Comments