音频上传在服务器上不起作用

马塞洛·阿西斯(Marcelo Assis)

我有一个可在mp3中记录和上传麦克风输入编码的应用程序。当我在Flash IDE中进行本地测试时,它工作正常,我的音频文件已上传。

我尝试过的是:

  • 我所有的文件都打开swf_dir(请参见下面的代码)
  • 我的嵌入标签已allowScriptAcess设置为always;
  • 已经将通用的crossdomain.xml放在我的主机根目录中swf_dir
  • 我的主类已经加载了一个策略文件并允许所有域(即使这是不必要的,因为它位于同一服务器中):system.security.loadPolicyFile("http://www.host.com/swf_dir/crossdomain.xml")system.Security.allowDomain("*")

这是上载/编码类。

package 
{
    import flash.events.ErrorEvent;
    import flash.events.Event;
    import flash.events.EventDispatcher;
    import flash.events.HTTPStatusEvent;
    import flash.events.IOErrorEvent;
    import flash.events.ProgressEvent;
    import flash.events.SecurityErrorEvent;
    import flash.net.URLLoader;
    import flash.net.URLLoaderDataFormat;
    import flash.net.URLRequest;
    import flash.net.URLRequestHeader;
    import flash.net.URLRequestMethod;
    import flash.utils.ByteArray;
    import org.bytearray.micrecorder.encoder.WaveEncoder;
    import fr.kikko.lab.ShineMP3Encoder;
    /**
     * ...
     * @author Marcelo de Assis
     */
    public class Mp3Helper extends EventDispatcher
    {       
        var loader:URLLoader = new URLLoader(); 
        var LOCAL_PATH:String = "http://www.host.com/swf_dir/upload.php";   // URL used to test on Flash IDE
        var PRODUCTION_PATH:String = "upload.php";       // URL used to test on server
        var mp3Encoder:ShineMP3Encoder; 

        var urlRequest:URLRequest = new URLRequest();
        var urlLoader:URLLoader = new URLLoader();

        public function Mp3Helper() 
        {
            urlRequest.url = PRODUCTION_PATH;
            urlRequest.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
            urlRequest.method = URLRequestMethod.POST;
            urlRequest.requestHeaders.push( new URLRequestHeader( 'Cache-Control', 'no-cache' ) );

            var urlLoader:URLLoader = new URLLoader();
            urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
        }

        function upload_s(soundByteArray: ByteArray)
        {   
            var waveEncoder:WaveEncoder = new WaveEncoder();
            var wavData:ByteArray = waveEncoder.encode(soundByteArray, 1);

            mp3Encoder = new ShineMP3Encoder(wavData);
            mp3Encoder.addEventListener(Event.COMPLETE, mp3EncodeComplete);
            mp3Encoder.start();
        }

        function mp3EncodeComplete(event: Event) : void 
        {           
            urlRequest.data = UploadPostHelper.getPostData("audio.mp3", mp3Encoder.mp3Data);
            urlLoader.load(urlRequest);
            urlLoader.addEventListener(Event.COMPLETE, loaderCompleted);
        }   

        private function loaderCompleted(event: Event):void 
        {
            dispatchEvent(event);
            var fileLoader: URLLoader = URLLoader(event.target);
            trace("loaderCompleted: ", fileLoader.data);
        }
    }   
}
fsbmain

如果发生URLLoader安全错误,请尝试打开PolicyFileLog = 1mm.cfg文件中的策略日志记录()(请查看本文在您的操作系统http://jpauclair.net/2010/02/10/mmcfg-treasure中将mm.cfg文件放在何处的位置。/,对于win7,默认的日志位置是C:\Users\user\AppData\Roaming\Macromedia\Flash Player\Logs\policyfiles.txt),在的情况下也会有帮助Socket

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

文件上传在实时服务器上不起作用

来自分类Dev

.htaccess在上传到Pantheon服务器上的drupal 7上不起作用

来自分类Dev

PHP多个文件上传在服务器上不起作用

来自分类Dev

图像文件上传在 wamp 服务器上不起作用

来自分类Dev

DNS解析在18.04服务器上不起作用

来自分类Dev

uiCulture在服务器上不起作用

来自分类Dev

Rotativa-ViewAspdf在服务器上不起作用

来自分类Dev

PHP chmod()在服务器上不起作用

来自分类Dev

速记数组在服务器上不起作用

来自分类Dev

转到:http服务器在osx上不起作用

来自分类Dev

CakePHP邮件在服务器上不起作用

来自分类Dev

RequiredFieldValidator在服务器上不起作用

来自分类Dev

Codeigniter路由在ubuntu服务器上不起作用

来自分类Dev

selectizeInput在我的闪亮服务器上不起作用

来自分类Dev

PHP PhantomJS在Web服务器上不起作用

来自分类Dev

导出到Excel在服务器上不起作用

来自分类Dev

DNS解析在18.04服务器上不起作用

来自分类Dev

PHP在Apache服务器上不起作用

来自分类Dev

modrewrite在wamp服务器上不起作用

来自分类Dev

Codeigniter路由在ubuntu服务器上不起作用

来自分类Dev

User.IsInRole在服务器上不起作用

来自分类Dev

会话在我的Web服务器上不起作用

来自分类Dev

ZipArchive在服务器php上不起作用

来自分类Dev

nodemailer的邮件在azure服务器上不起作用

来自分类Dev

相同的代码在不同的服务器上不起作用

来自分类Dev

PHP包括在Xampp服务器上不起作用

来自分类Dev

.htaccess文件在服务器上不起作用

来自分类Dev

CSV下载在实时服务器上不起作用

来自分类Dev

声音在Debian 8服务器上不起作用