如果响应是JSON,我如何签入Appcelerator?
我在js中尝试过常用的方法。
Ti.API.info(response.constructor.name); // returns "String"
if (response instanceof JSONObject) //JSON object undefined
其他方式
var response = this.responseText;
if (response.constructor === {}.constructor){
Ti.API.info('is object');
response = JSON.parse(response);
}
else{
Ti.API.info('not object');
Ti.API.info(response.constructor); // returns some Krollback <KrollCallback: 0x7fbdc8c0abe0>
}
我使用子字符串,但这似乎有缺陷。
if (response.substring(0, 1) === "{")
答案 0 :(得分:1)
按照Prashant和Carlos的建议,我在onload中使用了try / catch,谢谢你们。
True -> All (satisfies p) (x :: filter p xs)
答案 1 :(得分:0)
以下是我在验证API发送的JSON响应时所做的工作:
// convert http response to json
var CVT_ORDER_SEARCH_RESPONSE = JSON.parse(HttpResponse.responseText);
// verify json response parse returned valid object
if (!CVT_ORDER_SEARCH_RESPONSE){
throw 'Invalid JSON response returned by server.';
}