在数据库中插入值时调用 ajax

10 浏览
0 Comments

在数据库中插入值时调用 ajax

我当然知道Ajax,但Ajax的问题在于浏览器需要频繁轮询服务器以查找是否有新数据。这会增加服务器负载。

除了频繁轮询服务器,是否有更好的方法(即使使用Ajax)?

0
0 Comments

问题的出现原因:需要在数据库插入值时调用ajax。

解决方法:使用Reverse Ajax或Comet。 Comet是一种打开长时间HTTP请求以实时将数据推送到Web浏览器的方法。推荐使用StreamHub Push Server,它比其他服务器更容易入门,并且有一些很酷的演示。可以使用免费下载的Community Edition,但并发用户数限制为20个。商业版本的支持非常值得,还提供SSL和桌面.NET和Java客户端适配器。可以通过Google Group获得帮助,并且网络上有很多教程可供参考。还有一个GWT Comet适配器可用。实施起来有很多工作要做,包括重新连接、长轮询、流式iframe、跨浏览器支持和HTTPS。

0
0 Comments

现在你应该使用WebSockets。这是2011年的标准,允许使用HTTP建立连接,然后升级为双向客户端服务器基于消息的通信。你可以轻松地通过JavaScript启动连接:

var ws = new WebSocket("ws://your.domain.com/somePathIfYouNeed?args=any");
ws.onmessage = function (evt) 
{
  var message = evt.data;
  //解码消息(使用JSON或其他方式)并进行必要的操作
};

服务器端处理取决于你的技术栈。

与服务器推送事件相比:stackoverflow.com/questions/5195452/…

我完全同意...使用HTTP进行双向通信就像想着通过REST调用让马里奥跳到乌龟壳上一样...这是疯狂的。你不需要为简单的按钮点击发送请求并等待响应...你就是不需要。HTTP是一个文档协议。超文本传输协议。Ajax Push是绕过HTTP并用WebSocket设计的一种极其复杂的方式。别傻了,用正确的工具做正确的工作。

0
0 Comments

当值插入数据库时调用AJAX的原因是为了实现实时更新数据的功能。通过使用AJAX技术,可以在不刷新整个页面的情况下,将最新的数据从服务器获取并展示给用户。

解决这个问题的方法是使用COMET、AJAX-push或者reverse-ajax这些技术。COMET是一种基于长轮询的技术,它允许服务器在有新数据可用时立即向客户端推送数据。AJAX-push和reverse-ajax也是类似的技术,它们通过建立持久的HTTP连接来实现服务器向客户端实时推送数据的功能。

使用这些技术可以实现当值插入数据库时,自动调用AJAX来获取最新数据并更新页面的功能。以下是一个示例代码:

// 使用jQuery的AJAX方法来调用服务器端脚本获取最新数据
$.ajax({
  url: "update_data.php",
  method: "GET",
  success: function(response) {
    // 更新页面上显示的数据
    $("#data-container").html(response);
  }
});

在上面的代码中,当值插入数据库时,可以调用update_data.php脚本来获取最新的数据。然后,使用jQuery的AJAX方法将获取到的数据更新到页面上指定的元素(例如id为"data-container"的元素)中。

通过使用COMET、AJAX-push或者reverse-ajax这些技术,可以实现当值插入数据库时调用AJAX来实时更新数据的功能。这样,用户可以实时看到最新的数据,而不需要手动刷新页面。

0