作为标题,我有一个可以工作的客户端服务器应用程序,但现在我尝试重新设计我的软件以使其更加优雅。所以我创建了一个服务器类来创建一个 http_listener 并处理 POST 和 GET 方法,但之后它就不再工作了。在 .hi 中有:
class Server
{公共:服务器(){}
Server(utility::string_t url);
pplx::task<void> open();
pplx::task<void> close();
void handle_post(web::http::http_request message);
私人的:
// Error handlers
static void handle_error(pplx::task<void>& t);
// HTTP listener
web::http::experimental::listener::http_listener m_listener;
};
在 .ci 中有:
Server::Server(utility::string_t url) : m_listener(url)
{
m_listener.support(methods::POST, [this](http_request request){return Server::handle_post(request); });
m_listener.support(methods::GET, handle_get);
}
handle_get 在 .c 中定义用于测试,它可以工作,但我无法支持 POST 方法。我还尝试了不同的 POST 方法初始化,如下所示:
m_listener.support(methods::GET, std::bind(&Server::handle_post, this, std::placeholders::_1));
但它不起作用。建议?