如何使用 Titanium Studio 在 apigee baas 中 post json 对象

how to post json object in apigee baas using titanium studio

var jsonobj = { "username" : "cat" };

var client=Ti.Ui.createHttpClient({
    onload:{ },
    onerror : { }   
});

client.open('POST',api.usergrid.com/serv-d/demo1/logs);
client.send(jsonobj);

详情: jsonobj 是要在 apigee baas 中发布的 json 对象。 client.open 具有 apigee baas 的 url。 client.send 发送 json 对象。

您需要将数据作为 JSON 有效载荷发送,而不是像现在发送的那样 url 编码 POST 字段。您只需要将内容类型设置为 json.

var client = Ti.Ui.createHttpClient({
    onload:{ },
    onerror : { }   
});

client.setRequestHeader('content-type', 'JSON');
client.open('POST',api.usergrid.com/serv-d/demo1/logs);
client.send(JSON.stringify(jsonobj));

我认为你的 jsonobj 应该是:

var jsonobj = {username: uname, password: pass};

因为 JSON.stringify() 会处理它的字符串化。

让我们做一些测试:

var client = Ti.Network.createHTTPClient();
client.open('POST', 'http://requestb.in/1b1yblv1');
client.send(payload);

有:

var payload = {username: "cat"};

http://requestb.in/1b1yblv1?inspect 你看到:

username=cat

有:

var payload = JSON.stringify({username: "cat"});

是:

{"username":"cat"}

这就是你需要的,对吧?