闪存套接字策略

Posted

技术标签:

【中文标题】闪存套接字策略【英文标题】:flash socket policy 【发布时间】:2010-04-24 00:34:34 【问题描述】:

在我的 irc 客户端中使用 flash 套接字,我可以通过套接字策略文件服务器(没有服务器)以外的方式提供套接字策略文件吗?如果我使用 Security.loadPolicyFile 函数,我不需要任何守护进程,对吧?

【问题讨论】:

【参考方案1】:

这是我使用 TCP/IP 套接字和 XML 所知道的。我已经成功地设置了一个带有 Flash 客户端的 Ruby 服务器,但想了解更多关于聊天服务器的信息。我希望这对您有所帮助。

您需要一个带有 Flash AS3 的守护程序。这是文档。 http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000318.html

alt text http://www.ashcraftband.com/myspace/videodnd/daemonLil.jpg

要创建套接字连接,您必须创建一个服务器端应用程序来等待套接字连接请求并向 SWF 文件发送响应。这种类型的服务器端应用程序可以用 Java、Python 或 Perl 等编程语言编写。要使用 XMLSocket 类,服务器计算机必须运行理解 XMLSocket 类使用的协议的守护进程。该协议在以下列表中进行了描述:

• XML 消息通过全双工 TCP/IP 流套接字连接发送。 • 每条 XML 消息都是一个完整的 XML 文档,以零 (0) 字节结尾。 • 通过单个 XMLSocket 连接可以发送和接收无限数量的 XML 消息。

了解 Flash Player 10 中的安全更改http://www.adobe.com/devnet/flashplayer/articles/fplayer10_security_changes_02.html


XML 安全策略

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>
<site-control permitted-cross-domain-policies="master-only"/>
<allow-access-from domain="*"/>
<allow-http-request-headers-from domain="*" headers="SOAPAction"/>
</cross-domain-policy>

FLASH 客户端 请记住将发布设置设置为仅访问网络。

服务器 为安全策略打开一个单独的端口,并让它在后台运行。

【讨论】:

以上是关于闪存套接字策略的主要内容,如果未能解决你的问题,请参考以下文章

使用 Flash 的 TCP/IP 套接字策略文件忽略大量站点

基于闪存的信用卡支付?

使用 nodejs 和 expressjs 的 flash 套接字策略

套接字 IO 错误“对 XMLHttpRequest 的访问已被 CORS 策略阻止”

gunicorn + nginx:通过套接字或代理服务器?

未强制执行 Java 安全策略