Android web服务调用导致我的应用程序崩溃

Android web服务调用导致我的应用程序崩溃,android,web-services,titanium,onerror,Android,Web Services,Titanium,Onerror,大家好,我正在尝试用钛合金集成一个Web服务,但当我按下按钮调用它时,我的日志被终止,我的应用程序冻结。我没有收到任何错误消息。下面是我的代码: Post_array.push({ variable1:value1, variable2:value2 variable3:value3 }); var AddJobURL="http:/NUMBERS/MytestURL";

大家好,我正在尝试用钛合金集成一个Web服务,但当我按下按钮调用它时,我的日志被终止,我的应用程序冻结。我没有收到任何错误消息。下面是我的代码:

        Post_array.push({
            variable1:value1,
            variable2:value2
            variable3:value3
        });



    var AddJobURL="http:/NUMBERS/MytestURL";
    var AddJobxhr=Titanium.Network.createHTTPClient();

    AddJobxhr.onload=function(){
        console.log("Response text ----------------------"+ this.responseText);
        var doc= JSON.parse(this.responseText);
    };

    AddJobxhr.onerror=function(e){
        alert(e.error);
    };

    AddJobxhr.open('POST', AddJobURL);
    AddJobxhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    AddJobxhr.send(Post_array);

编辑:我意识到了问题所在。我的问题是我的Post_数组。我目前正在做的是点击一个按钮将4个项目推到一个数组中,然后再点击另一个按钮将另外4个项目推到另一个数组中,然后发布这个数组,但他的数组是[object object],[object object object],我想这是我的问题?有什么办法解决吗?

我想这里发送数据的格式不正确

以下是您需要发送数据的格式:

AddJobxhr.send({
  variable1: "value1",
  variable2: "value2" 
});
其中asPost_array是一个数组,而不是上述格式

你应该这样做:

var Post_array = {};

Post_array = $.extend(Post_array, {
  "variable1": "value1",
  "variable2": "value2",
  "variable3": "value3"
});

Post_array = $.extend(Post_array, {
  "variable4": "value4",
  "variable5": "value5",
  "variable6": "value6"
});

AddJobxhr.send(Post_array);

我想这里发送数据的格式不正确

以下是您需要发送数据的格式:

AddJobxhr.send({
  variable1: "value1",
  variable2: "value2" 
});
其中asPost_array是一个数组,而不是上述格式

你应该这样做:

var Post_array = {};

Post_array = $.extend(Post_array, {
  "variable1": "value1",
  "variable2": "value2",
  "variable3": "value3"
});

Post_array = $.extend(Post_array, {
  "variable4": "value4",
  "variable5": "value5",
  "variable6": "value6"
});

AddJobxhr.send(Post_array);

我想这里发送数据的格式不正确

以下是您需要发送数据的格式:

AddJobxhr.send({
  variable1: "value1",
  variable2: "value2" 
});
其中asPost_array是一个数组,而不是上述格式

你应该这样做:

var Post_array = {};

Post_array = $.extend(Post_array, {
  "variable1": "value1",
  "variable2": "value2",
  "variable3": "value3"
});

Post_array = $.extend(Post_array, {
  "variable4": "value4",
  "variable5": "value5",
  "variable6": "value6"
});

AddJobxhr.send(Post_array);

我想这里发送数据的格式不正确

以下是您需要发送数据的格式:

AddJobxhr.send({
  variable1: "value1",
  variable2: "value2" 
});
其中asPost_array是一个数组,而不是上述格式

你应该这样做:

var Post_array = {};

Post_array = $.extend(Post_array, {
  "variable1": "value1",
  "variable2": "value2",
  "variable3": "value3"
});

Post_array = $.extend(Post_array, {
  "variable4": "value4",
  "variable5": "value5",
  "variable6": "value6"
});

AddJobxhr.send(Post_array);

或者,您可以执行以下操作:

var Post_array = {};

// Doesn't have to be in quotes it's just the value you assign, strings are in quotes 
// where as integers are not. Let us assume that value1, valu2 and value3 are the
// variable and they can hold anything;

Post_array["variable1"] = value1; 
Post_array["variable2"] = value2; 
Post_array["variable3"] = value3; 

Post_array["variable4"] = value4; 
Post_array["variable5"] = value5; 
Post_array["variable6"] = value6;

AddJobxhr.send(Post_array);

或者,您可以执行以下操作:

var Post_array = {};

// Doesn't have to be in quotes it's just the value you assign, strings are in quotes 
// where as integers are not. Let us assume that value1, valu2 and value3 are the
// variable and they can hold anything;

Post_array["variable1"] = value1; 
Post_array["variable2"] = value2; 
Post_array["variable3"] = value3; 

Post_array["variable4"] = value4; 
Post_array["variable5"] = value5; 
Post_array["variable6"] = value6;

AddJobxhr.send(Post_array);

或者,您可以执行以下操作:

var Post_array = {};

// Doesn't have to be in quotes it's just the value you assign, strings are in quotes 
// where as integers are not. Let us assume that value1, valu2 and value3 are the
// variable and they can hold anything;

Post_array["variable1"] = value1; 
Post_array["variable2"] = value2; 
Post_array["variable3"] = value3; 

Post_array["variable4"] = value4; 
Post_array["variable5"] = value5; 
Post_array["variable6"] = value6;

AddJobxhr.send(Post_array);

或者,您可以执行以下操作:

var Post_array = {};

// Doesn't have to be in quotes it's just the value you assign, strings are in quotes 
// where as integers are not. Let us assume that value1, valu2 and value3 are the
// variable and they can hold anything;

Post_array["variable1"] = value1; 
Post_array["variable2"] = value2; 
Post_array["variable3"] = value3; 

Post_array["variable4"] = value4; 
Post_array["variable5"] = value5; 
Post_array["variable6"] = value6;

AddJobxhr.send(Post_array);

谢谢你的回复。由于我使用的是Tianium classic,我认为我无法按照您的建议使用extend。关于引号,我的一些变量是int,一些是字符串,它们是否都应该用引号括起来?谢谢你的回答。由于我使用的是Tianium classic,我认为我无法按照您的建议使用extend。关于引号,我的一些变量是int,一些是字符串,它们是否都应该用引号括起来?谢谢你的回答。由于我使用的是Tianium classic,我认为我无法按照您的建议使用extend。关于引号,我的一些变量是int,一些是字符串,它们是否都应该用引号括起来?谢谢你的回答。由于我使用的是Tianium classic,我认为我无法按照您的建议使用extend。关于引号,我的一些变量是int,一些是字符串,它们是否都应该用引号括起来?