无论是传统的Web应用程序还是RIA很多时候需要和服务器连接。当我们用Flash进行典型的“三层开发”时,Flash 播放器取代了传统层客户端浏览器。所谓Flash与服务器端的通信,就是指 Flash如何跟逻辑层的服务器端编程语言交换数据。

我们可以把整个服务器端的程序当成一个黑盒子,不用去了解它怎样连接数据库,又如何存取数据表的内容。但是我们必须知道它如何处理结果显示在Flash客户端。

不论你采用那种技术来开发服务器端程序,都应该遵守以下原则:

  • 接受资料的客户端是Flash,不是浏览器,因此动态网页中不要有HTML标签。
  • 所有传给服务器端的数据,必须使用“名称-值”配对的格式或XML格式(下次再讲)
  • Flash MX及更高版本输入/输出的数据的编码格式是UTF-8(Unicode),所以输入Flash的数据必须经过UTF-8编码才能正确显示中文。一般将代码存成UTF-8格式就可以了, 也可以在Flash中指定System对象的useCodepage属性为true来编码。

什么是“名称-值”配对?大家应该记得Flash读取的外部文件变量的格式吧。格式是:变量1=变量值 &变量2=变量值。如name = "jim"&age = "28",其中name和age都是变量,jim与28分别为它们对应的值。多个变量用 &连接起来,类似于URL中查询字符串的格式。

注意:不管是“名称-值”的格式还是XML格式,值都是以字符串形式传递到Flash中。

只要遵循上述格式,就可以用任何一种后台语言输出适合Flash读取的动态数据。常见的有:

  • ASP与ASP.net输出数据的格式:<%Response.Write("变量1=变量值&变量2=变量值")%>
  • PHP输出数据的格式:<?php echo("变量1=变量值&变量2=变量值") ?>
  • JSP输出数据的格式:<% out.print("变量1=变量值&变量2=变量值"); %>
  • ColdFusion输出数据的格式:<cfoutput>变量1=变量值&变量2=变量值</cfoutput>

Flash与后台连接方法很多,比如说使用loadVariables函数、LoadVars对象、XML对象、XML Socket对象、Flash Remoting和Webservice。

其中loadVariables函数Flash Player 4就开始支持了,它只能接收字符串变量,没有属性方法,加之也没有事件处理函数,因此逐渐被遗弃了。 我们这里也就不再过多讨论它了,直接从LoadVars对象开始。

Flash与服务器通信简介相关推荐

  1. Android操作HTTP实现与服务器通信

    出处:http://www.cnblogs.com/hanyonglu/archive/2012/02/19/2357842.html 本示例以Servlet为例,演示Android与Servlet的 ...

  2. 客户端服务器通信demo(续) -- 使用二进制协议 (附源码)

    转载连接: http://blog.csdn.net/zhuweisky/article/details/11827797 在网络上,交互的双方基于TCP或UDP进行通信,通信协议的格式通常分为两类: ...

  3. STM32-esp8266-MQTT服务器通信

    文章目录 硬件 软件 服务器 代码编写 esp8266 EMQ服务器的使用 STM32发布.服务器订阅 STM32订阅.服务器发布 MQTT客户端的使用 移植 硬件 STM32F103C8T6 ESP ...

  4. UDP实现服务器通信

    UDP实现服务器通信 UDP协议 UDP协议简介 TCP/UDP优缺点 通信流程 recvfrom函数 sendto函数 UDP实现客户端服务端通信 服务端程序 客户端程序 运行结果 参考 UDP协议 ...

  5. Flash使用服务器时间

    在做Flash应用时,有时可能会遇到需要使用服务器时间的情况,例如应用程序中显示当前系统时间.定时提醒等功能.使用new Date()创建的是客户端的时间,这并不是我们需要的,客户端时间很容易被用户更 ...

  6. 《服务器(CentOS7.7)深度学习环境搭建、配置及使用》之一:服务器情况简介

    Author kangzhiheng E-mail kangzhiheng@sjtu.edu.cn 本文链接 Github:https://github.com/kangzhiheng/GitLoca ...

  7. play服务器通信显示错误,play游戏服务器通信出现问题

    play游戏服务器通信出现问题 内容精选 换一换 有以下几种现象:将制作好的SD卡插入开发者板并上电后,开发者板LED1与LED2灯状态信息异常.将制作好的SD卡插入开发者板,并通过USB方式连接Ub ...

  8. 为什么获取crm服务器信息失败,为 Outlook 配置 Microsoft Dynamics CRM 客户端时出现 与 Microsoft Dynamics CRM 服务器通信时出现问题 错误...

    症状 当您尝试配置 microsoft Office Outlook 的 Microsoft Dynamics CRM 客户端时,收到以下错误消息: 与 Microsoft Dynamics CRM ...

  9. C++基于TCP/IP简单的客户端、服务器通信程序实例

    本篇文章实现了一个基于TCP 的一个非常简单的客户/服务器通信程序实例.该程序中通讯协议使用的是面向连接的TCP协议SOCK_STREAM, 服务器的ip地址为本地地址即: 127.0.0.1,端口号 ...

最新文章

  1. 光测力学-栅线投影/面结构光技术
  2. CSS hack:针对IE6,IE7,IE8,IE9,firefox显示不同效果
  3. VS.NET 2005 SP1 安装注意
  4. docker 如何删除<none>镜像
  5. 浅谈二次元场景特征和绘制手法
  6. Promises/A+规范中文翻译
  7. Traefik访问master节点不通的问题定位
  8. 基于智能的网络空间安全防御
  9. 阶乘因式分解(一) -- ACM解决方案
  10. 记录 Annotation processing is not supported for module cycles.
  11. mysql 与gemfire的同步_(转)分布式缓存GemFire架构介绍
  12. 加密货币究竟是不是泡沫?
  13. 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第4节 maven生命周期和概念模型图_08maven生命周期...
  14. 博科SAN交换机配置Trunk
  15. SAD—系统分析和设计 “机票预订系统”_软件工程导论大作业
  16. OpenCV入门笔记-更新篇
  17. 【华为ICT大赛】华为云激活设备的方法以及数据上下行
  18. What is 虫洞攻击?
  19. Android解析服务器Json数据实例
  20. 东方通中间件弱密码漏洞检测方法

热门文章

  1. 如何把很多照片拼成一张照片_怎样用手机将多张照片拼成一张组合图?
  2. win10 删除设备和驱动器中你不要的图标
  3. modelsim和vivado仿真不一致——噩梦debug
  4. Office噩梦公式远程代码执行漏洞
  5. PhoneGap Cordova 安装白皮书
  6. 基于Python库surprise的电影推荐系统
  7. B站粉丝计数器!基于microByte
  8. 网络课程学习视频的快进播放和去除鼠标移动视频暂停的问题
  9. java jdk安装失败_图文解答Java JDK9.0安装失败的原因,附带处理方法
  10. 微信公众平台编辑模式