如何在 beast 1.7 中打印 http 消息

How to print http message in beast 1.7

我无法打印 http 请求的基础,因为迁移到 beast 1.70.0

我之前是通过以下方式完成的:

std::cerr << ctx.res.base()

但目前看起来运算符没有重载,如何在 1.70.0 中重载?

问题可以通过以下代码重现:(注意应该使用 beast 1.70.0)

#include <boost/beast/http.hpp>
#include <boost/beast/http/write.hpp>
#include <iostream>

using namespace boost::beast;

http::response<http::string_body> res {};

int main()
{
    std::cout << res.base();
}

这是 Boost 1.70 中的错误,已在 1.71 版中修复。解决方法是为您的构建定义宏 BOOST_BEAST_ALLOW_DEPRECATED