FLEX沙箱问题 15

服务端使用的是VC程序写的与SWF不在同一服务器是socket通信... 服务端使用的是VC程序写的
与SWF不在同一服务器
是socket通信
展开
 我来答
暗夜de忧伤
2011-08-07 · TA获得超过1936个赞
知道小有建树答主
回答量:995
采纳率:75%
帮助的人:970万
展开全部
我是用java于flex通信,解决安全沙箱问题的思路是:
在java端创建两个serversocket,一个端口号是843,另一个是flex真正与java连接的socket端口号(这个自定义,假设为10086)。
然后端口号为843的socket服务器对象监听客户端请求,如果接收到<policy-file-request/>文件信息,则向客户端返回XMl验证内容:“<?xml version=\"1.0\"?><cross-domain-policy><site-control permitted-cross-domain-policies=\"all\"/><allow-access-from domain=\"*\" to-ports=\"*\"/></cross-domain-policy>\0”
另一个端口号10086转职与flex通信即可。
部署的时候,两个serversocket都必须启动。

这样运行的顺序是:
flex请求java的10086socket端口
点击请求时其实不是直接连10086,而是由flex向843端口发送安全验证消息
因为java部署了843端口,所以会获得验证消息,然后将上面那段xml传回去,flex收到安全消息后就放行
随后flex再次连接10086端口的时候就可以直接交互了
苌苗Us
2011-08-03 · TA获得超过340个赞
知道小有建树答主
回答量:462
采纳率:0%
帮助的人:425万
展开全部
亲,是socket通信吗。
FlashPlayer的安全策略检测过程如下:
1、首先检测目标服务器的843端口是否提供安全策略;
2、如果1没有检测到策略,则检测actionscript是否使用了
Security.loadPolicyFile(xmlsocket://)手段提供安全策略,如果还没检测到,则使用第3步检测;
3、检测目标服务器目标端口是否提供安全策略;

亲,那么我们直接在843端口提供一个服务就行了,把crossdomain.xml的内容从843端口发出去。
亲,反正以前我的代码就是这么做的。很成功。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TovT
2011-08-02 · 超过13用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:49.6万
展开全部
我都感觉这都不是问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式