C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 通过http代理增强asio ssl身份验证大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_450_1@
我有一个需要通过代理支持连接的boost客户端.

目前,我能够连接到代理并成功与外部服务器通信,只有一个例外 – ssl服务器.

代理是http,我需要连接/检索来自https站点的信息.

我的代码现在做了什么
    连接到代理asio :: ip :: tcp :: socket _socket; -succeeds
    发送CONNECT主机:ssl服务器到代理(上面连接)-succeeds


这是我被困的地方.如何执行握手/发送请求?

我找到了这个老帖子

boost::asio handshake through http proxy?

问题是:
   sslsocket_(socket_,context)//这不编译(构造函数期望io_service不是套接字)
– 使用提升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),但我不知道这对我有什么帮助
          }

解决方法

我找到了答案,我需要使用_socket.next层连接到代理.然后,如果连接成功,则使用_socket.loWest_layer()读取/写入响应

大佬总结

以上是大佬教程为你收集整理的c – 通过http代理增强asio ssl身份验证全部内容,希望文章能够帮你解决c – 通过http代理增强asio ssl身份验证所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。