1

希望有一些可以提供帮助!,在调试phonegap应用程序连接到它的WCF服务时,它似乎发布了两次。

当应用程序正常运行时,没有断点等,一切正常,我只收到 1。在我看来,如果几秒钟后服务器没有返回响应,ajax 会自行重新发布。

我需要确认这会抛出wireshark,但我只是想知道之前是否有其他人遇到过这个问题。

$.ajax({
                type: "POST",
                url: ServicePATH ,
                data: JSON.stringify({ objs: arrayobj, parm2: var2, parm3: var3, parm4: 1 }),
                contentType: "application/json",
                dataType: "json",
                success: function (data, textStatus, jqXHR) {
                    CallonSuccess(data);
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    console.log('error ' + textStatus);
                    console.log('XMLHttpRequest ' + XMLHttpRequest);
                    var str = '';
                    for (prop in XMLHttpRequest) {
                        str += "prop " + prop + " value :" + XMLHttpRequest[prop] + "\n"; //Concate prop and its value from object
                    }
                    console.log(str);
                    console.log('errorThrown ' + errorThrown);
                    console.log('passing ' + JSON.stringify({ objs: arrayobj, parm2: var2, parm3: var3, parm4: 1 }));
                }
            }).done(function () { console.log('Finished ajax'); }); 

谢谢 Lmac

4

1 回答 1

2

也许没有适合您的解决方案(请参阅下面的更新),但这里的行为相同。

如果没有 jquery Mobile 框架,一切正常,嵌入框架后它会再次获取我的 json 文件。在 Chrome 的控制台中,您可以在网络下看到它:GET 状态 200 和 GET 状态 304(未修改)。

我可以选择放弃 jQuery Mobile,我肯定会的。但也会有兴趣知道那里发生了什么。

更新:我在 $(document).ready(function() { }); 中有 xmlhttprequest 似乎 jQuery 和 jQuery Mobile 都对此做出了反应。

如果我将脚本放在站点的末尾并将我的 xmlhttprequest 放在就绪方法之外,它只会获取我的 json 文件一次。

于 2012-05-07T11:49:59.813 回答