1

我正在尝试将 req 传递给方法。我的代码是:

void handle_request(boost::beast::string_view doc_root, http::request<http::string_body> req, Send send)
{
   some code here
}

但是当我尝试编译它时,我收到了这个错误:

  "Body requirements not met"

我该如何解决?

错误不是来自这些行,但如果我从代码中删除函数定义,它不会显示任何错误。

还有其他几个错误完全来自

beast\http\message.hpp.
4

1 回答 1

0

该消息可能是is_body概念检查的结果。

您显示的代码不会导致错误,如此代码段所示:

Live On Coliru

#include <boost/beast.hpp>
#include <boost/beast/http/type_traits.hpp>

int main() {
    using namespace boost::beast;

    http::request<http::string_body> req;

    static_assert(http::is_body<http::string_body>::value, "all good");
}

如果这不能为您编译,那么您的 Boost 源代码已经损坏,或者您的编译器被误导了。

更有可能是您没有提及实际触发错误的代码,或者您没有编译您在编辑器中看到的代码。

于 2018-08-28T18:44:11.447 回答