b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

服务器推送技术_开源消息推送服务器_数据推送的几种方式(4)

电脑杂谈  发布时间:2017-03-31 09:06:34  来源:网络整理

"<!DOCTYPEcross-domain-policySYSTEM

"">n"+

"<cross-domain-policy>n"+

"<allow-access-fromdomain="*"to-ports="20340">n"+

"<cross-domain-policy>";

byte[]b=newbyte[POLICY_REQUEST.length()];

DataInputStreamdataInputStream=newDataInputStream(socket.getInputStream());

dataInputStream.readFully(b);

Stringrequest=newString(b);

if(POLICY_REQUEST.equals(request)){

DataOutputStreamdataOutputStream=newDataOutputStream(socket.getOutputStream());

dataOutputStream.write(POLICY_FILE.getBytes());

dataOutputStream.flush();

dataOutputStream.close();

}elsethrownewIllegalArgumentException("unknownrequestformat"+request);

}

此代码建立了与客户端的成功连接。现在,服务器可以与客户端发起 “握手” 之类的协议,此时,服务器通常会指定一个惟一的 ID,并将其发送给客户端,此后,服务器可根据 ID 缓存套接字,在此之后,如果服务器需要向客户端推送某些数据,可以按照 ID 定位套接字,并使用其输出流。幸运的是,OpenLaszlo 也使用了相同的基于策略文件的机制,因而,同样的服务器代码适用于两种场景。

下面将介绍如何创建 Flex 套接字,随后将其与 Ajax 应用程序连接。

使用 Adobe Flex 打开客户端套接字

清单 4 中的代码展示了如何通过 Flex 打开客户端套接字:

清单 4. 通过 Flex 打开客户端

varsocket:XMLSocket=newXMLSocket();

registerevents:

socket.addEventListener(Event.CLOSE,closehandler);

socket.addEventListener(Event.CONNECT,connectHandler);

socket.addEventListener(Event.OPEN,openHandler);

socket.addEventListener(ProgressEvent.SOCKET_DATA,readHandler);

socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityErrorHandler);

socket.connect("localhost",20340);

完成 socket.connect() 调用后,Flex 将向服务器发送一条请求,要求提供策略文件,期待获得 XML 响应。完成之后,连接即建立,这个套接字现在即可用于从服务器推送数据。服务器推送技术


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-38618-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 下屋则子
      下屋则子

      为什么马云这么爱说啊

    • 御影柚姫
      御影柚姫

      南方黑芝麻糊虽然垄断性地位

    • 刘琦
      刘琦

      这个教授是跟他兄弟合娶的老婆吧

    热点图片
    拼命载入中...