如何使用 cpp-netlib 来实现 HTTPS 服务器?
- cpp-netlib 可以用作 HTTP 服务器(请参阅我的示例代码中的服务选择器、处理程序和main)。
- 使用 boost::asio 设置 SSL 连接并不难(请参阅我在 SSL 的尝试)。
- cpp-netlib 通过提供给构造函数的选项接受 boost::asio::io_service ( cpp-netlib 参考)
以下问题阻止我结合 asio SSL 和 cpp-netlib:
通过 asio 和 cpp-netlib 的 SSL 都使用asio 接受器来侦听端口(例如 80 或 443),然后为实际连接使用单独的会话。
我假设对于 HTTPS:
- 您使用 asio ssl 接受器
- 哪个实例化一个连接
- 然后在这个连接上执行 SSL 握手,最后
- 让 cpp-netlib 通过此连接提供 HTTP
但是我怎样才能将 cpp-netlib 的 HTTP 连接处理程序与接受器的用途分开呢?
还是从 asio SSL 连接传递一个 io_service ?如果有,是哪一个?还是它们都一样?
还是有完全不同的路线可供选择?