Javascript 从JSON.parse数组获取数据
我陷入了这个问题,我正在调用一个返回json响应的Web服务 现在,我想从那个响应中获取一个特定的值,但在互联网上搜索并苦苦挣扎之后,无法修复它 这是我的密码:Javascript 从JSON.parse数组获取数据,javascript,json,titanium,appcelerator,Javascript,Json,Titanium,Appcelerator,我陷入了这个问题,我正在调用一个返回json响应的Web服务 现在,我想从那个响应中获取一个特定的值,但在互联网上搜索并苦苦挣扎之后,无法修复它 这是我的密码: var xhr = Titanium.Network.createHTTPClient({ onload : function(e) { Ti.API.info("Received text: " + this.responseText); alert('success'); }, // functio
var xhr = Titanium.Network.createHTTPClient({
onload : function(e) {
Ti.API.info("Received text: " + this.responseText);
alert('success');
},
// function called when an error occurs, including a timeout
onerror : function(e) {
Ti.API.debug(e.error);
alert('error');
},
timeout : 5000
});
var data = {"data":"system.connect"};
xhr.open("POST","http://mytesturl.net/services/json");
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
xhr.send("method=system.connect");
答案是这样的:
{"#error":false,"#data":{"sessid":"c4likn6vg33hngbpmobisrsbpcjjmf39","user":{"uid":0,"hostname":"102.119.85.120","roles":{"1":"anonymous user"},"session":"","cache":0}},"#response_code":200}
从上面的响应中,我想获取sessiond
值。
什么是正确的方法?可以在上查看和测试以下内容
问题是当我试图保存我的响应时,比如
var myData=this.responseText
,然后我记录它,它显示为null。我不知道它为什么显示为null,但当我像这样记录它时,responseText会给出准确的响应
// Given a string of JSON called responseText
var responseText = '{"#error":false,"#data":{"sessid":"c4likn6vg33hngbpmobisrsbpcjjmf39","user":{"uid":0,"hostname":"102.119.85.120","roles":{"1":"anonymous user"},"session":"","cache":0}},"#response_code":200}';
// You can parse it to an object using JSON.parse
var responseObj = JSON.parse(responseText);
// And then access the properties as with any object
console.log(responseObj ["#data"]["sessid"]);