【问题标题】:how to implement ajax-request processing using wt?如何使用wt实现ajax请求处理?
【发布时间】:2014-02-25 10:51:16
【问题描述】:

我将 json 发送到 url localhost/json。我该如何处理这个请求?它的表现如何?是否需要实现我自己的 WResource、WServer、WApplication 和其他东西? 请解释一下,如何使用 Wt 处理它。

/* in LoginForm() */
...
client.done().connect(this, &LoginForm::receiveJSONresponse);
...


void LoginForm::sendLogInRequest()
{
    Json::Object data;
    data["action"] = "login";
    data["username"] = usernameTextEdit.text();
    data["password"] = passwordTextEdit.text(); 
    Http::Message msg;
    msg.addHeader("Content-Type", "application/json");
    msg.addHeader("Accept", "application/json");
    msg.addBodyText(Json::serialize(data));
    client.request(Http::Post, "http://localhost/json", msg);
}

【问题讨论】:

    标签: c++ json rest wt


    【解决方案1】:

    您需要专门化一个 WResource,并在 handleRequest() 中查看发布的数据。

    WResource 有两种使用方式:会话特定的或全局的。特定于会话的资源具有随机 URL,而全局资源具有指定的(常量)URL。

    根据您的要求,要将资源附加到 localhost/json,资源必须附加到固定 URL,因此您确实可以通过 WServer API 执行此操作。查看博客示例,了解如何将 BlogRSSFeed 部署为静态资源。您可以以此为起点,修改handleRequest 以处理发布到资源的json。

    【讨论】:

      猜你喜欢
      • 2022-01-20
      • 1970-01-01
      • 2011-12-26
      • 2020-01-18
      • 2010-09-06
      • 1970-01-01
      • 2013-01-31
      • 2014-01-07
      • 1970-01-01
      相关资源
      最近更新 更多