我正在尝试将请求传递给方法。我的代码是:
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.
答案 0 :(得分:0)
该消息可能是is_body
概念检查的结果。
您显示的代码不会导致错误,如以下代码片段所示:
#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源已损坏,或者您的编译器被误导了。
更有可能是您没有提及实际上触发错误的代码,或者没有编译在编辑器中看到的代码。