본문 바로가기
반응형

프로그래밍/C++ rest(Casablanca)6

C++] cpprestful-server 완성본(CpprestSDK) 1. 소개마이크로 소프트에서 진행하고 있는 오픈소스 프로젝트 CpprestSDK를 활용해 만든 restful server입니다. 설치방법 및 간단한 셈플 코드는 제 블로그에 있으니 참고해주시기 바랍니다. openSSL을 통해 https가 가능하도록 구현했는데, 사용하시려면 코드내에 http부분을 https로 변경해주시기 바랍니다. 자세한 코드와 사용 방법은 git URL을 참고해주세요. git URL : https://github.com/dnfwlq8054/Cpprestful_Server 2. 매커니즘해당 restful 서버는 Json 통신만 지원합니다. 또한 Get, Put, Post, Delete 요청 시 핸들러가 이를 감지 -> 각 요청에 맞는 함수 객체를 콜백 형식으로 반환해 줍니다. 반환받은 함.. 2020. 11. 5.
C++] cpprestSDK(Casablanca) https(ssl) 적용방법. 이 글을 읽기 전 boost.asio의 ssl적용법에 대해 궁금하신 분들은 https://hwan-shell.tistory.com/240?category=703822를 참고해주세요.openssl 설치가 안되신 분들을 설치를 해주세요. 1. http_listener_configlistener 클래스에서는 listener에 대한 설정을 할 수 있도록 도와주는 http_listener_config를 제공해줍니다. 이것에 대한 정보는 https://hwan-shell.tistory.com/237?category=868199에 잘 설명해 놨습니다. http_listener_config에서 제공하는 함수중에는 set_ssl_context_callback() 함수가 있습니다. 인자로는 boost::asio::ssl:.. 2020. 7. 16.
C++] cpprestSDK(Casablanca) 1. http_listener 에 대해서.... http_listener는 task기반으로 만들어진 pplx::로 만들어졌습니다. 따라서 해당 객체를 open() 으로 실행하게 되면 쓰레드가 생성되면서 비동기적으로 실행됩니다. 또한 boost의 asio를 사용하여 만들어졌기 때문에 운영체제마다 제공하는 Thread pool을 사용하며, 사용자는 Thread에 대해 관리를 해주지 않아도 됩니다. 또한 내부적으로 중복생성을 막기위한 코드가 존재하며 예외처리를 합니다. 사용자는 support() 함수를 이용해 코드를 간편하게 만들면 됩니다. 1. http_listener 사용법해당 클래스는 namespace web::http::experimental::listener 에 정의되어 있습니다. 따라서 사용하기 편하게 하실려면 using namespace web.. 2020. 7. 2.
C++] cpprestSDK 에 대한 간략한 설명. 해당 SDK는 microsoft에서 진행하고있는 오픈소스 프로젝트 Casablanca입니다. 현재 업데이트가 뜸~ 하지만 꾸준히 진행되고 있습니다. 지금부터 특징에 대해 설명해드리겠습니다. 1. cpprestSDK의 특징해당 라이브러리는 boost, openSSL 라이브러리를 커스터마이징해 좀 더 사용자가 사용하기 편리하게 제작했으며,cpp의 ppl라이브러리인 task를 기반으로 만든 pplx로 이루어져 있습니다. boost의 asio를 사용해 비동기식 입.출력을 효율적으로 가능하게 했으며 Thread pool을 사용합니다.Thread pool은 운영체제에서 제공해주는 Thread pool을 사용하게 됩니다.(Win : IOCP, Linux : epoll, Mac : kqueue) task 라이브러리의 .. 2020. 7. 2.
C++로 Restful서버 만들기(casablanca) 2. Server Sample Code 이번엔 GET을 통해 서버로부터 간단한 메시지를 얻어오는 TEST를 해보겠습니다. 우선 아래는 Sample Code 입니다. #include #include using namespace std; using namespace web::http; using namespace web::http::experimental::listener; int main(){ http_listener listener(U("http://localhost:9090")); //Server URL, Port 지정. listener.open().then([&listener](){cout 2019. 5. 28.
C++로 Restful서버 만들기(casablanca) 1. 셋팅 및 설치 C++로 카사블랑카(casablanca) SDK를 이용해 Restful 웹 서버를 만들어 볼까 합니다. 우선 개발 환경부터 말씀드리겠습니다. OS : Linux(Ubuntu 18.04)개발 툴 : vim컴파일러 : g++(7.4) 우선 라이브러리를 설치해야 하는데, C++의 Restful SDK를 설치해야 합니다. MS에서 현재 제공하고 있는 casablanca를 사용할 것이며, 계속해서 업데이트가 진행되고 있는 MS의 프로젝트 SDK입니다. 현재 github에 올라와 있으며 https://github.com/microsoft/cpprestsdk에서 올라와 있습니다. 설치 방법은 이렇습니다. 우선 git을 설치해야 합니다. ---------------------------------------------.. 2019. 5. 28.
반응형

스킨편집 -> html 편집에서