SharedObject 共享对象

 介绍

 出于安全性能的考虑,flash player客户端程序不能够访问本地数据。但也有一种解决方法,就是使用SharedObject 。

 haredObject类用于在用户计算机或服务器上读取或储存一定大小的数据。SharedObject对象为常驻在本地计算机或远程服务器上的多个客户端SWF文件或对象提供实时数据共享。本地共享对象类似于浏览器的cookie,远程数据共享对象类似于实时数据传送设备。要使用远程共享对象,需要用到Adobe Flash Media Server。

 使用共享对象可以用于以下用途:

1 维持本地持久化

 这是最简单的用途,不需要Media Server,可通过调用SharedObject.getLocal("fileName"),创建一个本地共享对象,用于在本地存储共享数据。其中fileName为没有扩展名的共享文件名,共享文件的后缀统一为.sol,保存在默认路径下。

2 在Flash Media Server储存或共享数据

 共享对象可以保存在服务器上供其他客户端检索。通过调用SharedObject.getRemote()创建一个远程共享对象。某个客户端无论何时修改共享对象,其他连接到server上的client可以使用修改后的数据。如果对象在本地也持久的,客户端改变了数据但是没有连接到服务器上,那么当客户端下一次连接远程共享对象时,数据就会拷贝到该对象

3 运行时共享数据

 共享对象可以在运行时在多个客户端共享数据。例如,你打开了一个存储着连接到某个聊天室的用户列表的远程共享对象,连接到该对象的所有客户端都能够看到该列表。当用户进入或退出聊天室时,对象被更新,所有连接到给对象的客户端能看到修改后的聊天用户列表。

当应用程序关闭时,将会刷新共享对象或将其写入磁盘。也可以调用 flush() 方法以显式地将数据写入磁盘。

SOL文件

ShareObject将文件保存为sol文件格式,在windows系统下,保存位置为C:/Documents and Settings/{user}/Application Data/Macromedia/Flash Player/#SharedObjects/{randomly named directory}/{path to the swf on the domain}。{randomly named directory} 随即生成一个目录,能够增加客户端网络的安全性。{path to the swf on the domain}是使用ShareObject的文件的目录,如本次测试的#localhost/FoodControl/flex_bin/modules/TemporaryCheck.swf/setting.sol,应用程序在TemporaryCheck.mxml文件中使用了ShareObject。前面围TemporaryCheck.swf文件的地址

文件大小

ShareObject能够保存的数据大小是有限制的,一般默认为100k。当用户要保存的数据超过了这个限制后,player会弹出修改文件限制的窗口。要改变可存数据的大小,可有以下几种方法:

1 在保存数据时。调用flush()函数保存数据时,可提供一个参数,指定文件大小。

2 系统弹出提示窗口,选择接受或拒绝修改

3 在应用程序的任何地方,点击右键,选择“设置”,可以对若干个参数进行修改

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
无法打开共享对象文件 回答: "cannot open shared object file: No such file or directory"错误通常是因为系统无法找到所需的共享对象文件。这可能是由于文件不存在或路径配置不正确导致的。通常可以通过以下几种方式解决此问题: 1. 确保所需的共享对象文件存在于系统中。您可以使用命令"ls"检查文件是否存在。如果文件确实不存在,则需要安装或重新配置所需的软件包。 2. 检查LD_LIBRARY_PATH环境变量的设置。LD_LIBRARY_PATH是一个环境变量,它指定了共享库文件的搜索路径。您可以使用命令"echo $LD_LIBRARY_PATH"来查看当前设置的路径。如果所需的共享对象文件不在其中,可以通过将路径添加到LD_LIBRARY_PATH来解决此问题。例如,如果共享对象文件位于"/usr/local/lib"目录下,您可以使用命令"export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH"来添加路径。 3. 修改/etc/ld.so.conf文件。该文件是系统动态链接器(ld.so)的配置文件,其中包含了共享库文件的搜索路径。您可以使用文本编辑器打开/etc/ld.so.conf文件,并添加所需的共享库文件路径。然后使用命令"sudo ldconfig"来使更改生效。 请注意,修改系统文件和环境变量可能需要root或管理员权限。谨慎操作,并确保在操作前备份相应的文件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [cannot open shared object file: No such file or directory解决方法](https://blog.csdn.net/zong596568821xp/article/details/90297360)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Linux 下 cannot open shared object file 报错问题](https://blog.csdn.net/fightingtingting/article/details/124803060)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [解决cannot open shared object file: No such file or directory](https://blog.csdn.net/qq_32146369/article/details/114613254)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值