【收藏】Flex数据通讯
Flex/Flash 支持的数据通讯方式有:
http URLLoader
SOAP(webservice)
json
xml
flash remoting / AMF3
xmlsocket
socket(二进制)(自定义协议)
高并发的应用中用户状态可以用cookie,不用session
如果是多人实时交互如聊天系统,多人在线互动等应用模块 需要用socket进行通讯(与服务器建立长连接),服务器端可以自己写多线程Socket Server也可以基于现有开源的Socket lib进行开发,比如QuickServer和XSocket.
读取非实时交互数据如房间列表,游戏列表,用户信息等数据,目前推荐用flash remoting AMF3协议
以下是一个FLASH AS3写的Socket通讯类
package net
{
import flash.events.*;
import flash.net.*;
import flash.utils.*;
public class mySocket extends EventDispatcher
{
private var nStatus:int = 0;
private var ndx:int = 0;
private var packet:ByteArray;
private const REQ_PROCESS:int = 4;
private var packetlen:uint = 0;
public var port:int;
private var readpacket:ByteArray;
public var connected:Boolean = false;
private const REQ_DONE:int = 3;
public var host:String;
private var packetbody:ByteArray;
private var readbodypos:int = 8;
private const REQ_REQUEST:int = 0;
private var nreadPos:int = 0;
private const PACKET_HEADER_SIZE:int = 8;
private const REQ_BODY:int = 2;
private var nBodyLen:uint = 0;
private const REQ_ERROR:int = 5;
private const PACKET_BUFFER_SIZE:int = 16384;
private const REQ_HEADER:int = 1;
private var socket:Socket;
public function mySocket(param1:Boolean = false, param2:String = "String")
{
packetlen = 0;
nStatus = 0;
nreadPos = 0;
nBodyLen = 0;
ndx = 0;
connected = false;
readbodypos = PACKET_HEADER_SIZE;
packet = new ByteArray();
packetbody = new ByteArray();
readpacket = new ByteArray();
readpacket.end
相关文档:
老生常谈的话题了。
首先是转帖部分:
http://kingwind.blogbus.com/logs/44323315.html
先来看Flex调用JavaScript中的函数
FlexConnectJavaScript.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script> ......
我以前一直从事桌面开发,尤其数据处理的的系统较多。使用较多的是开发工具是VFP,它有自带的数据库,也可以使用大型的数据库系统,既可以开发系统也可以用命令行进行管理数据。但,它在不久的将来就MS不再抚养这个买来的儿子了,操作的系统的换代等等多种因素影响,不管它是否会消忘,但始终也会 ......
<?xml version="1.0"?>
<!-- charts/PredefinedAxisStyles.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<!--[CDATA[
//导入相关包
import mx.collections.ArrayCollection;
import mx.charts.*;
import mx.charts.ser ......
Are you running your Flex Application and continually getting the error below?
"Flex Builder cannot locate the required version of the Flash Player. You might need to install Flash Player 9 or reinstall Flex Builder. Do you want to try to run your application with the current version?"
Description ......
Flex中通过继承可以为新组件增加新的功能,如通过注入方法,改变背景色,改变位置和高度等。这里主要掌握原组件的一些特性,属性和方法,以便根据需要的功能加以覆写(也可以自己扩展),达到自己想要的效果。下面是一个简单的例子
1、新建MyDataGrid.as,继承DataGrid,覆写drawRowBackground方法,注入rowColorFunction方 ......