如何使用钛工作室更新javascript中的现有json对象

时间:2015-03-11 11:07:39

标签: json titanium titanium-alloy apigee-baas

var args = arguments[0] || {};
$.atn.text=args.attendance;
Ti.API.info('attendance:'+args.attendance);
function doClick(e){
  $.atn.value=$.atn.value+1;
  Ti.API.info('atn is'+$.atn.value);

  var url = "api.usergrid.com/PRI_95616/LOGIN/attendances?";

  var client = Ti.Network.createHTTPClient({
    onload : function(e) {},

    onerror : function(e) {
      Ti.API.debug(e.error);
      alert('error');
    },
    timeout : 5000  // in milliseconds
  });
  client.setRequestHeader('content-type', 'JSON');
  client.open("PUT", url);

  client.send(JSON.stringify(jsonobject));
}

我想获取然后更新考勤值,然后在数据库中插入更新后的值。我该怎么办?

1 个答案:

答案 0 :(得分:1)

如果通过“更新数据库”表示PUT为Restful API,则会出现一个小错误。

client.send(JSON.stringify(jsonobject));

jsonobject未定义。它必须是您刚刚构建的json(JavaScript)对象。如果$ .atn是您正在推送值的对象,请尝试:

client.send(JSON.stringify($.atn));

我不知道usergrid.com的REST API规范,但是如果您要做的就是PUT一个定义了.text和.value的json对象,那么URL“api.usergrid.com/PRI_95616/LOGIN/上座率?”那应该这样做。但是,您必须在URL之前输入http://,如:

"http://api.usergrid.com/PRI_95616/LOGIN/attendances?"