プロキシ経由の接続をサポートする必要があるブースト クライアントがあります。
現在、プロキシに接続し、ssl サーバーを除いて外部サーバーと正常に通信できます。
プロキシは http であり、https サイトから情報を接続/取得する必要があります。
私のコードがプロキシ asio::ip::tcp::socket _socket; に接続するようになりました。-succeeds CONNECT host: ssl server をプロキシに送信します (上記で接続) -succeeds
-- ここが行き詰っています。ハンドシェイク/送信リクエストを実行するにはどうすればよいですか?
この古い投稿を見つけました
boost::asio HTTP プロキシ経由のハンドシェイク?
問題は次のとおりです: sslsocket_(socket_,context) //これはコンパイルされません (コンストラクターはソケットではなく io_Service を想定しています) --boost 1.52 を使用
以下はコードです
//ヘッダーを解析してレスポンスをチェック
boost::asio::ssl::stream<boost::asio::ip::tcp::socket> _socket;
boost::asio::ip::tcp::socket _httpSocket;
...
int response= _httpHeader.getResult(header.c_str());
if(response==200) {
boost::asio::ssl::context ctx(io_service,boost::asio::ssl::context::sslv23);
_sslSocket(_httpSocket,ctx); //this fails
注:この部分が機能した投稿に基づいて、上記の投稿から上記をコピーしました。_sslSocekt(io_service,ctx) である必要があるように見えますが、それがどのように役立つかわかりません}