flex在线mp3播放器(一)通过webservice 与服务器通讯,获取mp3列表
来源:互联网 发布:centos jdk1.8 rpm 编辑:程序博客网 时间:2024/04/30 13:44
这是我的第一篇博克,呵呵。
在网络上播放mp3的时候首先要获取mp3列表,有几种方法来和服务器通讯,这里选择用webservice.服务器端用.net。
1。服务器端,C#代码:
新建一个服务:
[WebMethod]
public string getMusicList()
{
StringBuilder musicXmlList=new StringBuilder();
musicXmlList.Append("<MUSIC>");
string[] musicList;
musicList = System.IO.Directory.GetFiles(@"E:/music");
string s;
for (int i = 0; i < musicList.Length; i++)
{
s=musicList[i].Substring(musicList[i].LastIndexOf('//')+1);
musicXmlList.Append("<name>");
musicXmlList.Append(s);
musicXmlList.Append("</name>");
}
musicXmlList.Append("</MUSIC>");
return musicXmlList.ToString();
}
2:flex 代码:
package com.lly
{
/**
*
* @author Luolingyun
*
*/
import flash.events.EventDispatcher;
import mx.controls.Alert;
import mx.rpc.AbstractOperation;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.soap.WebService;
/**
*通过webservice获取文件地址
*
*/
public class ClsMusic extends EventDispatcher
{
private var ws:WebService;
public var _op:AbstractOperation;
private var _msg:String;//错误信息
private var musicList:XMLList;
public function get MusicList():XMLList
{
return musicList;
}
public function ClsMusic()
{
getMusicList();
}
/*************************
* 获取webservice
* */
public function getWebservice():void
{
var url:String="http://192.168.1.17:7788/DataAccess.asmx?wsdl";
if(ws==null)
{
ws=new WebService();
ws.loadWSDL(url);
}
}
/***************************
* 获取mp3列表
* */
public function getMusicList():void
{
getWebservice();
_op=new AbstractOperation();
_op = ws.getOperation("getMusicList");
_op.addEventListener(ResultEvent.RESULT,getResult);
_op.addEventListener(FaultEvent.FAULT, getFault);
_op.send();
}
/**
*
* @param evt
*
*/
private function getResult(evt:ResultEvent):void
{
var xml:XML;
var xmlString:String;
var muInfoEvent:MusicListEvent
xml=new XML(evt.result);
xmlString=xml;
musicList=new XMLList(xmlString);
muInfoEvent=new MusicListEvent(MusicListEvent.MUSIC);
muInfoEvent.musicList=musicList;
this.dispatchEvent(muInfoEvent);
_op.removeEventListener(ResultEvent.RESULT,getResult);
}
private function getFault(evt:FaultEvent):void
{
_msg=evt.fault.faultDetail;
Alert.show(_msg);
//监听之后删除,避免重复监听
_op.removeEventListener(FaultEvent.FAULT, getFault);
}
}
}
- flex在线mp3播放器(一)通过webservice 与服务器通讯,获取mp3列表
- android 在线mp3播放器(一)
- flex MP3播放器开发一(思路篇)
- flex 播放mp3
- Flex mp3播放
- Flex mp3播放
- flex 播放mp3文件
- 新手mp3播放器心得(一)---- 获取所有歌曲(遍历文件获取、媒体库获取)
- 如何实现一个FLEX MP3播放器
- 我的flex MP3 播放器
- 一个Flex做的Mp3播放器
- Flex开发实例教程-Mp3播放器
- FLex 编写网页MP3播放器
- Ubuntu MP3播放器列表乱码
- MP3播放器显示歌曲列表部分
- 播放本地MP3 (一)
- flex MP3播放器开发二(单歌曲播放)
- Android练习项目 Mp3播放器实现(一)
- NET多线程同步方法详解(七):线程池(Thread Pooling)
- 关于symbian的清除栈
- 解决DotProject 甘特图中文乱码
- 关于rich:fileUpload学习心得
- webwork 2.2.2 高级特性
- flex在线mp3播放器(一)通过webservice 与服务器通讯,获取mp3列表
- Linux内核设计与实现 之二 从内核出发
- ASP函数库
- 解析.Net框架下的序列化机制(转)
- va_list可变参数传递
- 组件的性质及容器小结
- 深入浅出C# 中文版 图文皆译 第三章 page103
- 排序數據的示例,多个数字用逗号分隔For ASP
- MyEclipse Web工程 完美移植到Eclipse WTP