2013-03-05 1 views
2

저는 C++을 처음 접했고 웹 프로토콜이나 웹 소켓에 관해 전혀 알지 못하므로 어리석은 것처럼 보일 수 있습니다.websocket ++ fastcgi ++의 세션 예제 사용

나는 100 % 아약스 인 웹 사이트를 만들고 싶다. Fastcgi ++는 아약스 요구 사항에 대한 희망이지만 웹 소켓이 없기 때문에 websocket ++는 websocket ++가 다소 단순하므로 #include이므로 fastcgi ++에 통합 할 수 있다고 가정 했으므로 libsbsockets보다 websocket ++를 선택했습니다.

저는 fastcgi ++을 알아 냈다고 생각합니다. 대부분의 작업이 Fastcgipp::Request에서 일어나고 세션 데이터가 Fastcgipp::Http::Sessions 인 것 같습니다. http://www.nongnu.org/fastcgipp/doc/2.1/a00005.html; 그러나 웹 소켓 https://github.com/zaphoyd/websocketpp/wiki/Creating-Applications-using-WebSocket--을 처리하기 위해 websocket ++의 server::handler과 동일한 작업을 수행해야한다고 생각합니다. 이제 바다에서 길을 잃어 버렸습니다.

C++로 미숙 한 경험을 입력하십시오 : virtual inheritance을 사용해야한다고 생각하지만 잘 모르겠습니다. 또한, 둘 다 적절하게 "서브 클래스 화"할 수 있다면, 어떻게 그들이 서로를 뛰어 넘지 않는지 확인해야합니까?

websocket ++에서 fastcgi ++의 세션 관리를 사용하는 방법에 대한 기본적인 예를 보여주십시오.

+0

의 저자, ​​사람의 마음이 도와주는 것? http://askubuntu.com/questions/264493/how-to-install-websocket-dependencies –

답변

4

HTTP 요청/응답 워크 플로로 WebSocket 연결을 처리 할 수 ​​없습니다. 일반 HTTP 요청과 WebSocket 요청 모두에서 fastcgi ++와 같은 것을 사용하려면 WebSocket 핸드 셰이크를 인식하고 HTTP로 처리하는 대신 다른 처리기로 연결하는 몇 가지 방법이 필요합니다. 나는 그 문서에서 그 종류의 모드를 통해 명백한 통과를 보지 못했지만 나는 뭔가를 놓칠 수 있었다.

이러한 기능이있는 경우 WebSocket ++는 모든 네트워크 요소를 비활성화하고 다른 네트워킹 라이브러리에서 파이프 된 스트림을 처리하는 스트림 모드에서 사용할 수 있습니다.

일부 대안 :

  • 웹 소켓 ++ HTTP 통과 지원합니다. 이것은 본질적으로 위에 설명 된 것과 반대입니다. WebSocket ++는 네트워킹 계층으로 사용됩니다. 들어오는 WebSocket 연결을 처리하고 HTTP 요청을 다른 하위 시스템으로 전달합니다.
  • WebSocket ++ 및 fastcgi ++는 다른 포트 또는 다른 호스트 이름에서 실행할 수 있습니다. 이것은 동일한 프로그램이나 별도의 프로그램에서 수행 할 수 있습니다. 클라이언트 측 요청이 적절한 호스트/포트로 지정됩니다.

면책 조항 : 나는 웹 소켓 ++도

+0

어쨌든 100 % 웹 소켓을해야한다는 질문을 한 직후에 나를 때렸다. LOL 답변 해 주셔서 감사합니다 !!! –