FLASH Bulder Type 1136:参数数量不正确。预计2. - JSON

时间:2011-02-27 16:37:26

标签: flash flex json youtube

我正在使用http://www.thetechlabs.com/tech-tutorials/audionvideo/creating-a-downloader-for-youtube-with-flexair-2/上的教程在Flash Builder中制作Youtube下载程序,但我的代码中出现错误

public function getFLVURL( sHTML:String ) : String {
                var swfArgsFound:Array = sHTML.match( /var swfArgs =(.*?);/ );
                **var swfArgsJS:JSONDecoder = new JSONDecoder( swfArgsFound[1] );**
                var swfArgs:Object = swfArgsJS.getValue();

                var url:String = 'http://youtube.com/get_video.php';
                var first:Boolean = true;
                for( var k:String in swfArgs ) {
                    if ( swfArgs[k] != null && swfArgs[k].toString().length > 0 ) {
                        url += first ? '?' : '&';
                        first = false;
                        url += k+'='+escape(swfArgs[k]);    
                    }
                }
                return url;
            }

错误是说参数数量不正确,预期为2.但是我无法弄清楚第二个参数是什么。我可以告诉的教程是为Air 1.0编写的,所以自编写教程以来可能已经发生了变化。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我认为你的'已加星标'行会导致错误?您使用的是AS3CoreLib库吗?

你看过the code这门课吗?

第一个参数是您要解码的字符串。第二个被命名为'strict',我假设它与代码的解码方式有关。根据文档:

  

strict Flag指示是否为JSON   字符串需要严格匹配   是否是JSON标准。

尽管如此,这是如何达到你甚至不得不问这个问题的?