2016-09-10 3 views
0

최근 프록시 (웹 디버깅) 소프트웨어를 작성하기 시작했습니다. 그리고 GET 요청을 잘 처리했습니다. 가끔씩 클라이언트로부터 CONNECT 메시지를 받는다. 그래서 나는 목표 서버에 연결하고 "200 Connection Established"에 의해 클라이언트에 응답한다. 그게 전부입니까 ?? 이후 서버 또는 클라이언트에서 메시지가 전혀 수신되지 않기 때문에 . 그래서 혼란 스러웠습니다. https 사이트 (예 : https://google.com)가로드 될 때까지 https CONNECT 메시지 요청 및 응답의 모든 단계를 알고 싶습니다.http 연결 요청은 어떻게 작동합니까?

감사합니다.

+0

이것이 C++과 어떤 관련이 있는지 모르겠다. – alk

+0

처음에는 코드를 추가하고 싶었습니다. 그러나 너무 엉망이되어서, 나는 그것을하지 않기로 결정했다. ( – Ramin

답변

0

CONNECT 요청은 set up a connection tunnel으로 사용됩니다. 주로 http 프록시를 통해 https 사이트에 액세스 할 수 있도록하기 위해 사용됩니다.

웹 프록시는 지정된 호스트에 프록시 연결을 설정 한 다음 두 프록시 중 하나가 종료 될 때까지 두 연결간에 트래픽을 프록시해야합니다.

연결을 설정 한 후 클라이언트 또는 서버가 다른쪽에 뭔가를 보내기 시작할 것입니다. 프록시 코드는 언제든지 클라이언트 또는 서버에서 더 많은 데이터를 수신하여 상대방에게 전달되도록 준비되어야합니다. 그렇지 않으면 프록시가 올바르게 작업하지 않습니다. https 협상을 처리하는 것은 프록시의 작업이 아닙니다. 연결이 설정되면 프록시는 모든 데이터를 투명하게 프록시해야하며 클라이언트와 서버 간에는 https을 서로 이야기해야합니다.

+0

.) 나는 클라이언트 나 서버로부터 요청을받을 때까지 소프트웨어를 계속해서 개선 할 것이다. – Ramin