블로그 보관함

2014년 3월 11일 화요일

JavaScript 29 XMLHttpRequest

요청

Request-Line >> GET  RequestURI  HTTP/1.1  (CRLF)
요청은 위와 같이 방식, URI, 프로토콜명과 버전으로 이루어져 있고 마지막에는 항상 CRLF(Carrage Return Line Feed)가 붙어야 한다.
요청 헤더에는 요청/공통/data가 들어갈 수 있다.
헤더의 마지막 라인에도 CRLF가 들어가야 한다.
이 아래에는 원격 함수에 주고 받을 수 있는 data가 들어올 수 있다.

Request Header eg) 

- by Fiddler


GET http://ib.adnxs.com/a_usersync?cbfn=ANX_async_load HTTP/1.1
Host: ib.adnxs.com
Connection: keep-alive
Accept: */*
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36
Referer: http://g.adnxs.com/tt?id=1147029&size=728x90&cb=19b9dfd8ea3f
Accept-Encoding: gzip,deflate,sdch
Accept-Language: ko-KR,ko;q=0.8,en-US;q=0.6,en;q=0.4
Cookie: uuid2=7888810291799878796; sess=1; icu=ChUIi6UKEAoYrgEgrgEorgEw69f7mAUKEgjppQoQChgnICcoJzDv1_uYBRDv1_uYBRjjAQ..; anj=dTM7k!M4.g1IKuvF7gSoj3qu#24lxXifH$='l^!75=Pj9++.EO+Uw![^R>Es#3nByMq?p2XqSn`Y_Mlk:_g=!89Nm(l-J`f`>GzphC-'blmo#k4)>!#C_N$[hZm[=YEt6u[iRZ]:^_AZv+^M'jpX6H[Pc!Uqi'wFOAZ$e6#v5K-c@])nEfkR_5ha@L[!j4?@4lC3Nl+b>P`WC+j0oj0E]j1c7)6$)dYBp?$*n?(ELuKPs9xy]A6^jU+SZw-RX^pLbk6N`r<LLSG4K@N#5?>XDjsDwy[Z<n_M19[?R4nW1+%Cou.5xk-lZRi0oW=LzF1QpC/UUDh!f)7AP'RC558.K70VQJ_kJvntB)B!2l[?J2b%4+_mKQVlJv'rM2u@iH.v/0x74b8r_DTCSXDkUd9?y8%Y8sLqIX=)e78GY`mVL15ws5=SS$%=]=4C!6Bv(*b]S=



응답

Status-Line >> HTTP/1.1  200  ok  (CRLF)
응답 역시 요청과 마찬가지로 일정 형식을 가지고 전달해야 한다. 프로토콜명과 버전을 제시한 뒤에 요청한 데이터에 대한 상태 값을 보내준다. 뒤에 나오는 문자열은 해당 상태 값의 문자값이다. 쉽게 접할 수 있는 상태로는 400(잘못된 요청), 404(not found) 등이 있다. 요청과 마찬가지로 줄의 마지막에는 CRLF가 와야 하며 헤더의 마지막 라인에도 역시 CRLF가 들어가야 한다. 그 뒤에는 요청한 것에 대한 data가 들어있는 Entity-body가 올 수 있다.

Response Header eg)

-by Fiddler


HTTP/1.1 200 OK
Cache-Control: no-store, no-cache, private
Pragma: no-cache
Expires: Sat, 15 Nov 2008 16:00:00 GMT
P3P: policyref="http://cdn.adnxs.com/w3c/policy/p3p.xml", CP="NOI DSP COR ADM PSAo PSDo OURo SAMo UNRo OTRo BUS COM NAV DEM STA PRE"
X-XSS-Protection: 0
Set-Cookie: uuid2=7888810291799878796; path=/; expires=Mon, 09-Jun-2014 10:56:48 GMT; domain=.adnxs.com; HttpOnly
Set-Cookie: sess=1; path=/; expires=Wed, 12-Mar-2014 10:56:48 GMT; domain=.adnxs.com; HttpOnly
Content-Type: text/html; charset=utf-8
Date: Tue, 11 Mar 2014 10:56:48 GMT
Content-Length: 0

댓글 없음:

댓글 쓰기