开发者社区> 问答> 正文

Flash录音机,如何在不保存本地文件的情况下,上传录音至服务器(SSH)

小弟目前在做一个网页录音的小东西

想用Flash实现

已经在AS中获取到了录音的文件对象

现不知如何上传至后台

后台使用的是Struts + Spring + Hibernate

在Action中的.do里面接不到所传参数

求解答,最好能有可参考的代码

部分代码如下:

AS中:

Actionscript代码 收藏代码

private function onRecordComplete(event:Event):void  
{  
    _display.text = "Playing recorded sound.";  
    player = new WavSound(recorder.output);  
  
    //压缩  
    this.recorder.output.compress();  
    player.play();  
    //_file.upload(uploadUrl,uploadFileName,false);  
    //_file.save( recorder.output, "recorded.wav" );  
    //上传操作  
    var url:URLRequest = new URLRequest(uploadUrl.url + "?testParam=1");  
    url.contentType = "application/octet-stream";  
    url.method = URLRequestMethod.POST;  
      
    url.data = recorder.output;  
    url.url += "?" + uploadFileName + "FileName=" + uploadFileName + "&" + uploadFileName + "ContentType=" + url.contentType;  
    _display.text = "onRecordComplete_2:" + url.url;  
    this.loader.dataFormat = URLLoaderDataFormat.BINARY;  
    this.loader.addEventListener(Event.COMPLETE, this.completeHandler);  
    this.loader.addEventListener(ProgressEvent.PROGRESS, this.progressHandler);  
    this.loader.load(url);  
}

java:

Java代码 收藏代码

private String recFileName;  
private File rec;  
private String recContentType;  
private String testParam;  
  
@Action(value="/recorder/RecordAction/upload")  
public String upload(){  
    System.out.println("----------upload begin-----------------");  
    if(rec!=null){  
        System.out.println("rec is not null");  
    }  
    Struts2Utils.renderText("1");  
    System.out.println("----------upload end-----------------");  
    return null;  
}

展开
收起
长安归故里. 2020-01-31 13:49:05 987 0
1 条回答
写回答
取消 提交回答
  • 你需要搭建一个流媒体服务器,比如red5,利用rtmp协议把采集的音频流源源不断的发送到服务器,你可以百度一下rtmp协议就明白了

    2020-01-31 13:49:14
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS快储存加密技术 立即下载