解决安全沙箱问题
上次發布的FLEX+Delphi,FLEX+Java,FLEX+C# 的聊天室 還有安全沙箱問題沒有解決,
現在已經找到解決方法了,FLEX客戶端在網站上運行的時候,先進行Socket連接,然后發“<policy-file-request/>”信息,即安全策略請求,如果沒有通過安全策略的檢驗,socket時連接不成功.
如果安全策略的檢驗通過了,socket也會先斷開,然后在連接一次,這個時候一切正常了。
Delphi代碼
?? if POS('<policy-file-request/>',Str)>0 then?//是安全策略請求
?? begin
???? Lists:=TStringList.Create;
???? Lists.LoadFromFile('socket-policy.xml');//然后裝載socket-policy.xml文件
???? xml:=Lists.Text;
???? Socket.SendText(xml);?//發送安全策略
???? Socket.SendText(#$00);//結束標志
???? Lists.Free;
???? exit;
?? end;
?
socket-policy.xml文件
<cross-domain-policy>
? <site-control permitted-cross-domain-policies="all"/>
? <allow-access-from domain="*" to-ports="8014" />
</cross-domain-policy>
總結
- 上一篇: 使用 PHP 创建自己的视频点播网站
- 下一篇: xSocket 通讯框架 demo