Poco HTTPServer

时间:2018-07-03 14:07:54

标签: c++ sockets poco

我正在使用Poco :: Net :: HTTPServer。我可以设置端口,但是如何设置监听接口/地址?默认为0.0.0.0

Poco::UInt16 port = 4000;
Poco::Net::ServerSocket socket(port);
Poco::Net::HTTPServerParams *pParams = new 
Poco::Net::HTTPServerParams();
pParams->setMaxQueued(100);
pParams->setMaxThreads(16);
Poco::Net::HTTPServer server(new HandleFactory(this->licenseServer),     socket, pParams);
server.start();

1 个答案:

答案 0 :(得分:2)

ServerSocket具有其构造函数的几个版本,而不是

ServerSocket(Uint16 port, int)

您应该使用

ServerSocket(
  const SocketAddress & address,
  int backlog = 64
);

并构造SocketAddress,将第一个参数传递为IP地址(可以是字符串对象),第二个参数传递为端口:

Poco::UInt16 port = 4000;
Poco::Net::ServerSocket socket(Poco::Net::SocketAddress("0.0.0.0",port));