我正在調用谷歌通過網址翻譯文本到語音服務閃光燈:僅在某些瀏覽器上使用AS3 ioError,爲什麼?
translate.google.com/translate_tts?tl=en&q=example
我得到它的工作在Firefox,但由於某種原因它不能在Chrome和Safari工作。問題在哪裏?
我得到的錯誤是:
[IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2032: Stream Error. URL: http://translate.google.com/translate_tts?tl=en&q=example"]
但是當我複製/粘貼到瀏覽器的URL,它返回一個FIL就像它應該。
Flash播放器:
firefox: 10,0,42,34 installed - WORKS
chrome: 11,1,102,55 installed - DOES NOT WORK
safari: 10,0,42,34 installed - DOES NOT WORK
我完全驚呆了。不知道如何進一步調試。
請幫
更新1:FLASH CODE
public function say(text:String, language:String):void {
var urlString:String = createGoogleTTSUrl(text, language);
var url:URLRequest = new URLRequest(urlString);
//var context:SoundLoaderContext = new SoundLoaderContext(1000, true);
_sound = new Sound();
_sound.addEventListener(Event.COMPLETE, loadComplete);
_sound.addEventListener(ErrorEvent.ERROR, err);
_sound.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler2);
_soundChannel = new SoundChannel();
_sound.load(url); //, context);
}
private function ioErrorHandler2(event:IOErrorEvent):void {
trace(event);
}
我後來才刪除的SoundLoaderContext,但這並沒有改變任何東西。
更新2:其他人有同樣的問題:
本教程有同樣的問題。適用於FF,但不適用於Chrome或Safari。人們在評論報告類似的錯誤 (點擊演示按鈕:) http://active.tutsplus.com/freebies/exclusive/exclusive-freebie-text-to-speech-utility/
你可以發佈Flash代碼嗎? – vulkanino 2012-02-08 16:23:21
看到這個鏈接:[http://stackoverflow.com/questions/3178252/chrome-as3-urlloader-different-behavior-on-network-error] [1] 和這一個:[http:// stackoverflow.com/questions/7355595/as3-error-says-stream-error-but-when-loaded-manually-its-there][2] [1]:http://stackoverflow.com/questions/3178252/chrome-as3-urlloader-網絡錯誤行爲 [2]:http://stackoverflow.com/questions/7355595/as3-error-says-stream-error-but-當手動加載時,它的 – mgraph 2012-02-08 16:24:53
這些鏈接沒有幫助。第一個解釋爲什麼鉻在URL中丟失,第二個進入一些「閃存認證」,我不認爲適用於這裏 – mgPePe 2012-02-08 16:38:57