/ / Poco :: Net :: HTTPRequestHandler * createRequestHandlerは呼び出されない - php、poco-libraries

Poco :: Net :: HTTPRequestHandler * createRequestHandlerは呼び出されません - php、poco-libraries

私はこのようにPocoでhttpサーバを作成しています。

Poco::Net::ServerSocket svs(10880);
Poco::Net::HTTPServerParams* pParams = new Poco::Net::HTTPServerParams;
pParams->setKeepAlive(true);
Poco::Net::HTTPServer srv(new RequestHandlerFactory, svs, pParams);
srv.start();

そしてそれはハンドラの一部です

class RequestHandlerFactory: public Poco::Net::HTTPRequestHandlerFactory
{
public:
Poco::Net::HTTPRequestHandler* createRequestHandler(const          Poco::Net::HTTPServerRequest& request)
{
cout << "hi!" << endl;

if (request.getURI() == "/test")
cout << endl << "test!" << endl;
else
{
cout << endl << request.getURI() << endl;
return 0;
}
}
};

私がウェブブラウザを通してこのサーバを入手するとき、それはうまくいきます。しかし、phpページがリダイレクトされたときには動作しません。このような

//xxx.xxx.xxx.xxx is the poco server ip
echo "<meta http-equiv="refresh" content="0; url=http://xxx.xxx.xxx.xxx:10880/test">";

または echo "document.location.href ="http://xxx.xxx.xxx.xxx:10880/test"; ";

または echo "http://xxx.xxx.xxx.xxx:10880/test"> ";

Poco :: Net :: HTTPServerではなく、もっと多くのことを設定する必要がありますか?それとも他のクラスを使用する必要がありますか?

回答:

回答№1は1

工場はポインタを作成して返す HTTPRequestHandler (実際には要求を処理します)0を返すだけではありません。 .