0

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

问题:通常,如十分之 1 次发送 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.");
    }
});

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

设置是 jquery 和 Kendo UI Mobile。

还有另一种更可靠的方法来使用 JavaScript 发出这个 POST 请求吗?

4

2 回答 2

1

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

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

  • 从 v1.5 开始提供 JSONP 请求的超时
于 2013-08-09T10:06:58.467 回答
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.");
        }
    });

谢谢你。

于 2013-08-11T10:57:43.243 回答