使用ajax进行不可靠的POST

时间:2013-08-09 09:46:47

标签: javascript ajax jquery kendo-mobile

我需要使用移动应用程序发送和接收一些简单数据。我使用jquery $ .post函数执行此操作 - 但它似乎非常不稳定。

问题: 通常,像10次中的10次一样,POST被发送,但回调函数永远不会运行。我从服务器端知道收到了POST并且返回了数据 - 但是客户端通常没有发生任何事情。

$.post(url, { 'username': username, 'password': password },
function(data) {
    if (data.Message == "Ok") {
        alert("Logged in OK.");
    } else if (data.Message == "Error") {
        alert("Error. Check username and password.");
    } else {
        alert("An unknown error has occured.");
    }
});

客户端没有任何事情发生的时间(即使我看到数据已发送到服务器) - 再次运行该功能不起作用。我必须重新加载整个页面并再试一次 - 然后一切正常。

与Kendo UI Mobile一起设置jquery。

是否有另一种更可靠的方法来使用JavaScript发出此POST请求?

2 个答案:

答案 0 :(得分:1)

AJAX请求可能因任何原因而失败,您可以通过为用户提供重新提交选项来解决此问题,在服务器端,您可以执行任何检查以避免重复...

或者你可以使用超时,检查一下 http://api.jquery.com/jQuery.ajax/

  • JSON请求超时可从v1.5
  • 获得

答案 1 :(得分:0)

我想这必须改变。我只是尝试了它的工作

 $.post(url, { 'username': username, 'password': password },
    function(data) {
        if (data == "Ok") {
            alert("Logged in OK.");
        } else if (data == "Error") {
            alert("Error. Check username and password.");
        } else {
            alert("An unknown error has occured.");
        }
    });

谢谢。