Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wt/WServer>
- #include <Wt/WResource>
- #include <Wt/WApplication>
- #include <Wt/WContainerWidget>
- #include <Wt/Http/Response>
- #include <Wt/WVBoxLayout>
- #include <Wt/WText>
- using namespace Wt;
- class MyResource : public Wt::WResource
- {
- public:
- MyResource (Wt::WObject *parent = nullptr);
- ~MyResource ();
- void handleRequest (const Wt::Http::Request& request, Wt::Http::Response& response);
- };
- MyResource::MyResource (Wt::WObject *parent)
- : Wt::WResource(parent)
- {
- suggestFileName("data.txt");
- }
- MyResource::~MyResource ()
- {
- beingDeleted(); // see "Concurrency issues" below.
- }
- void MyResource::handleRequest(const Wt::Http::Request& request, Wt::Http::Response& response)
- {
- response.setMimeType("plain/text");
- response.out() << "I am a text file." << std::endl;
- }
- class WtTest : public Wt::WApplication {
- public:
- WtTest (const Wt::WEnvironment &environment);
- virtual ~WtTest ();
- static WtTest* CreateInstance (const Wt::WEnvironment &environment);
- };
- WtTest::WtTest (const Wt::WEnvironment &environment)
- : Wt::WApplication(environment)
- {
- auto layout = new WVBoxLayout(root());
- layout->addWidget(new WText("Hallo Welt"));
- layout->addStretch(1);
- }
- WtTest::~WtTest()
- {
- }
- WtTest* WtTest::CreateInstance (const Wt::WEnvironment &environment)
- {
- return new WtTest(environment);
- }
- // --http-address=0.0.0.0 --http-port=80 --docroot=.
- int main (int argc, char** argv)
- {
- WServer wserver(argc, argv);
- wserver.addEntryPoint(Wt::Application, &WtTest::CreateInstance);
- // without this 2 lines its not crashing...
- MyResource res1;
- wserver.addResource(&res1, "/res1");
- wserver.start();
- wserver.waitForShutdown();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment