[英]Why am I suddenly getting stream error while using URLLoader?
我從事Android應用程序項目已經一年了,一開始就實現了此功能。 該應用程序是費用/儲蓄管理應用程序,它具有一項功能,如果用戶當前在其他國家/地區,則可以在后台轉換貨幣。 我正在使用地理名稱API來查找國家/地區名稱。 以下是相關代碼:
countryURLRequest = new URLRequest('http://api.geonames.org/findNearby?lat='+latitudes+'&lng='+longitudes+'&username=fatninja');
countryURLLoader = new URLLoader();
countryURLLoader.load(countryURLRequest);
今天,當我從模擬器發送lat和lng值時,在這一行出現了上述流錯誤:
countryURLLoader = new URLLoader();
奇怪的是,此功能自一開始就運行良好。 我認為這可能是代碼中的錯誤,所以我從備份中運行了項目(從3個月前開始),它給出了相同的錯誤。 我知道一個事實,那就是三個月前。 可能是什么問題呢?
此錯誤表明您在獲取數據時遇到問題。 您的代碼沒有錯。 可能是您的網絡配置已更改,這阻止了對Web服務的訪問。
事實是,您以前使用的代碼也面臨着同樣的問題,這進一步證明了這一點。
您應該做兩件事。
添加IO錯誤事件處理程序和HTTP狀態事件處理程序。
var loader:URLLoader =新的URLLoader; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,loader_ioErrorHandler); //注意,已將偵聽器添加到contentLoaderInfo對象loader.addEventListener(HTTPStatusEvent.HTTP_STATUS,loader_httpStatusHandler); loader.load(new URLRequest(“ www.example.com”));
函數loader_ioErrorHandler(e:IOErrorEvent):void {//處理錯誤跟蹤(e.text); }
函數loader_httpStatusHandler(e:HTTPStatusEvent.HTTP_STATUS):void {trace(e.status); }
添加標簽以將IO錯誤處理程序中的錯誤通知用戶,還可以添加一個按鈕以重試該請求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.