Flash Professional CS6 ActionScript实现谷歌翻译无返回问题求助
Flash Professional CS6 谷歌翻译功能开发故障说明
初始问题
我们尝试在Flash Professional CS6的ActionScript环境中编写谷歌翻译功能,但代码无法正常运行,无法返回翻译结果,初始代码如下:
private function translate(e) { var result_lv:LoadVars = new LoadVars(); result_lv.onLoad = function () { var str:String = unescape(this); var txtContent; var translatedText:String = str.split('":"')[1].split('"}, ')[0]; if(translatedText != undefined) txtContent.text = translatedText.split('r').join('n').split('"').join("'"); return txtContent.text; } var lorem_lv:LoadVars = new LoadVars(); var from:String = "fa"; var to:String = "en" lorem_lv.v = "1.0"; lorem_lv.format = "text"; lorem_lv.q = e; lorem_lv.langpair = from + "|" + to; lorem_lv.sendAndLoad(" http://ajax.googleapis.com/ajax/services/language/translate ", result_lv, "GET"); }
代码说明:LoadVars.sendAndLoad( )方法的具体用法可参考ActionScript官方开发文档。
编辑1:首次优化后的代码
我们对代码进行了修改,在主函数中添加了返回语句以保证主函数有输出,但函数仍然没有返回任何翻译内容,优化后代码如下:
private function translate(e) { var result_lv:LoadVars = new LoadVars(); var txtContent; result_lv.onLoad = function () { var str:String = unescape(this); var translatedText:String = str.split('":"')[1].split('"}, ')[0]; if(translatedText != undefined) txtContent.text = translatedText.split('r').join('n').split('"').join("'"); return txtContent.text; } var lorem_lv:LoadVars = new LoadVars(); var from:String = "fa"; var to:String = "en" lorem_lv.v = "1.0"; lorem_lv.format = "text"; lorem_lv.q = e; lorem_lv.langpair = from + "|" + to; lorem_lv.sendAndLoad(" http://ajax.googleapis.com/ajax/services/language/translate ", result_lv, "GET"); return txtContent.text; }
编辑2:PHP中转方案说明
我们已经找到一个可正常返回翻译结果的免费PHP版谷歌翻译实现,目前尝试在Adobe Flash Professional CS6的ActionScript 2环境中加载该PHP函数的返回结果,具体实现逻辑可参考Flash调用PHP函数的相关开发教程。
编辑3:相关开发书籍推荐
- 《Foundation PHP for Flash 1st Edition》:PHP配合Flash开发的入门级完整教程
- 《Foundation PHP 5 for Flash 1st Edition》:适配PHP5的Flash开发教程
- 《Advanced PHP for Flash 1st ed. Edition》:PHP配合Flash开发的进阶教程
编辑4:当前待排查问题
我们已经重写了ActionScript函数,改为调用上述PHP版谷歌翻译函数,但仍然无法返回翻译结果,恳请各位帮忙排查问题,谢谢!
内容的提问来源于stack exchange,提问作者Saeed
相关产品推荐
相关产品推荐

