Exception Tianium Appcelerator-HTTPClient-onload-custom异常
我正在使用Tianium Studio build:3.4.0.201409261227,我正在尝试捕获Ti.Network.HTTPClient的onload回调中的异常 但这是不可能的,我得到了应用程序错误的红色屏幕,我无法捕捉异常 有人有主意吗Exception Tianium Appcelerator-HTTPClient-onload-custom异常,exception,titanium,httpclient,appcelerator,onload,Exception,Titanium,Httpclient,Appcelerator,Onload,我正在使用Tianium Studio build:3.4.0.201409261227,我正在尝试捕获Ti.Network.HTTPClient的onload回调中的异常 但这是不可能的,我得到了应用程序错误的红色屏幕,我无法捕捉异常 有人有主意吗 try { var tiHTTPClient = Ti.Network.createHTTPClient({ onload : function(e) { thro
try {
var tiHTTPClient = Ti.Network.createHTTPClient({
onload : function(e) {
throw 'EXCEPTION';
}
});
tiHTTPClient.open( 'GET', 'http://www.google.com' );
tiHTTPClient.send();
}
catch( e ) {
alert( 'E: ' + e.message );
}
除了onload功能外,还可以通过以下方式轻松实现:
try {
throw 'EXCEPTION';
}
catch( e ) {
alert( 'E: ' + e.message );
}
:
顺便说一句,您的try…catch博客之所以没有任何区别,是因为调用成功——这是一个异步调用,因此它只会立即返回控制,因此您可以直接通过try块,而不会出现任何问题。
大宗报价
一个解决方案可以是:
var exceptionHandling = function( msg ) {
alert( 'E: ' + msg );
};
var tiHTTPClient = Ti.Network.createHTTPClient({
onload : function(e) {
exceptionHandling('EXCEPTION');
}
});
tiHTTPClient.open( 'GET', 'http://www.google.com' );
tiHTTPClient.send();
尝试在onload函数中写入try-catch块。同时添加onerror函数。