LOGIN • JOININ

HTTP QUERY

[Tutorials/[Server] 4. Query classes/Tutorial_Query06_HTTP]



웹쿼리 역시 ‘CGServerQuery::HTTP::CQuerier’ 를 사용해서 간단히 처리가 가능합니다.

기본적인 처리 구조는 다른 Querier 구조와 동일합니다.

HTTP Query를 사용하기 위해서는 먼저 ‘CGServerQueryHTTPClasses.h’를 Include해야 합니다.



1... HTTP Querier 열기

HTTP QUerier는 특별한 파라메터나 설정이 필요없이 그냥 생성후 Start()함수만 호출하면 됩니다.

// 1) Querier를 생성한다.
auto	pQuerier	 = NEW<CGServerQuery::HTTP::CQuerier>(L"TestHTTP");

// 2) Start을 한다.
pQuerier->Start();

1) Querier를 생성합니다. 이때 주어지는 ("TestHTTP"은 단순한 Querier의 이름일 뿐입니다.)

2) 특별한 설정없이 그냥 Start만 하면 됩니다.



2... HTTP Query 요청하기

// 3) CGWeb::CHTTPRequest 객체에 접속을 위한 URL을 설정해준다.
pQuerier ->RequestQuery (L"https://www.google.co.kr/?gws_rd=ssl", CGWEB_METHOD_GET,
 [](CGWEBMSG_REPONSE& _MSG)
{
	// 설명)
	if(_MSG.iResult==0)
	{
		// - 첫 Buffer만 출력한다.
		PrintReceive(_MSG.vectorBuffer.front());

		// Trace) 
		printf("[Done]\n");
		printf("Success! Total %d Bytes\n", _MSG.byteReceived);
	}
	else
	{
		printf("ERROR!");
	}
});

4) RequestQuery()를 수행합니다. 웹 URL을 넣어 Query와 결과를 처리할 람다함수를 설정합니다.

이때 ‘GET’방식으로 할 것인가 ‘POST’방식으로 할 것인가를 선택할 수 있습니다.

5) 웹 Query 결과 처리를 위한 람다 함수를 설정합니다.