《as3_Socket_的例子》.doc
文本预览下载声明
as3?Socket?的例子
CODE:
[Copy to clipboard]
telnet 110
这个命令就是要求连接到 的110端口去。我们的flash程序也需要连接到这个端口去收信的如果你的网络连接正常,并且你也正确键入了上面那行。你应该可以看到一个纯黑的窗口在下面的操作就是在同pop服务器的交互了。注意,在telnet下,你不能用退格键,如果打错了,直接回车,重新输入一遍。现在输入
CODE:
[Copy to clipboard]
user yourUserName
这里是 user 命令,语法是user 空格 你的用户名然后输入
CODE:
[Copy to clipboard]
pass yourpassword
这里是 pass 命令,语法是pass 空格 你的密码这样你就登录了然后,用list命令来获取你的信list这个命令是用来获取邮件列表的然后,你可以用retr 邮件号
CODE:
[Copy to clipboard]
retr 408
来获取邮件内容只不过是以2进制获取到的。还有很多email的标记。但是,到此为止,你已经可以获取到邮件内容了写了这么多,还没进入正题呢。真是的:L不过,为了没有网络基础的人能看明白点,我就这么写吧。今天继续写那么,下面就该进入正题了。再不进入正题也说不过去了首先,先把.Socket;flash.utils.ByteArray;这两个类说一下Socket这个类是Flash9新支持的。它的作用就是创建一个建立在TCP/IP协议上的socket连接。什么叫做socket连接呢。一般来说,你要想指定远程计算机上的一个服务,不仅要说明ip地址,还得指名端口号。ip地址与端口号合起来叫做一个socket,来标示远程计算机上的一个服务。比如http服务我们通常看到 :8080这样的形势,就是一个套接字,也就是一个socket所以,你就把socket理解为标示远程服务的ip与端口的组合在网络上传送的内容都是使用二进制来传送的,他们实际上属于如下形式中的一种:Byte,Bytes,Double,Float, Int,Object,Short,UnsignedByte,UnsignedInt,UnsignedShort,UTF,UTFBytes,Boolean由于pop3协议发送的命令可以用UTFBytes,所以,这里,作者就用了这个类型大家可以看到在一开始,程序先是? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 创建一个新的socket对象
CODE:
[Copy to clipboard]
socket = new Socket();
由于网络调用是异步发生的,因此,像你使用loadVar或者xml.load的时候一样,必须定义一个回叫的方法。在这里,体现为事件的监听。
CODE:
[Copy to clipboard]
socket.addEventListener( socketData , socketDataEvent , false ,0);
这里添加了当data返回时的响应事件。然后,就是就是当你点击connect的时候,这个connect方法了。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 他这是在取得文本框里的地址? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // Assign POP3 server from text input
CODE:
[Copy to clipboard]
POP3Server = pop3Server.text;
然后,通过调用socket的connect方法连接到那个服务器? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // Connect to server and specify port number
CODE:
[Copy to clipboard]
socket.connect(POP3Server, port);
之后,创建一个ByteArray,这个东西其实就是一个以位byte为个体的数组。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? // Create an instance of flash.utils.ByteArray
CODE:
[Copy to clipboard]
var authentication:ByteArray = new ByteArray();
然后,向这个byteArray中写入字符串,也就是我们的命令。这两个命令大家应该比较熟悉了吧。? ? ? ? ? ? ?
显示全部