我将 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);
}
最佳答案
您需要专门化一个 WResource,并在 handleRequest() 中查看发布的数据。
WResource 有两种使用方式:特定于 session 或全局。特定于 session 的资源具有随机 URL,而全局资源具有指定的(常量)URL。
对于您所要求的,要将资源附加到 localhost/json,资源必须附加到固定的 URL,因此您确实可以通过 WServer API 来完成此操作。查看博客示例,了解如何将 BlogRSSFeed 部署为静态资源。您可以以此为起点并修改 handleRequest 以处理发布到资源的 json。
关于c++ - 如何使用wt实现ajax请求处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22011925/