0

我正在使用 PhoneGap 开发一个需要填写表格的应用程序。在提交时,数据应该作为 JSON 对象发送到我们的托管站点,但提交失败,当我请求 XMLHttpRequest.responseText 时,它是空白的。

这是我的代码

$('#myform').submit( function() {   
    var obj = $('#myform').serializeObject();
        $.ajax({
              type: 'POST',
              url: 'myurl.php', 
              data: obj,
              success: function(){
                  alert( "Thank You For Your Submission" );
              }, //end success
              error: function(XMLHttpRequest, textStatus, errorThrown) {
                  console.log(XMLHttpRequest.responseText);
                  console.log(textStatus);
                  console.log(errorThrown);
                  alert("ERROR");

            } 
          });
}

我的代码基于来自http://samcroft.co.uk/2012/posting-data-from-a-phonegap-app-to-a-server-using-jquery/的帖子,但我无法弄清楚是什么导致我的案子失败。这个应用程序是 Android 并且我使用的网站是由 Yahoo 托管的,但我在我的 AndroidManifest.xml 中允许它。

任何帮助将非常感激。

4

1 回答 1

0

我认为您的ajax调用没有任何问题。问题可能是身份验证。托管站点是否需要某种登录?众所周知,使用 PhoneGap 的 ajax 调用无法返回 401 错误并返回空白(可能就像您收到的一样)。

问题在于 phonegap JIRA ( Jira issue ) 并且正在处理中。如果需要身份验证,你需要在你的调用中添加一个额外的选项:beforeSend,你设置一个requestheader包含身份验证头和用户名+密码的地方。

于 2013-05-02T08:52:01.570 回答