flash客户端请求workerman服务端时报错

飞飞飞飞飞飞

04:52:11 PM .474 ms --VideoE-- The socket has an SecurityError :
上边是报错内容
下边是根目录的xml文件

<cross-domain-policy>
    <site-control permitted-cross-domain-policies="all"/>
    <allow-access-from domain="_" to-ports="_"/>
    <allow-http-request-headers-from domain="_" headers="_"/>
</cross-domain-policy>

另外我另外开启一个服务 端口为843,给客户端返回xml文件还是不行。

$flash_policy = new Worker('tcp://192.168.1.152:843');
$flash_policy->onMessage = function($connection, $message)
{
    $xml = '<cross-domain-policy>';
    $xml .= '<site-control permitted-cross-domain-policies="all"/>';
    $xml .= '<allow-access-from domain="_" to-ports="_"/>';
    $xml .= '<allow-http-request-headers-from domain="_" headers="_"/>';
    $xml .= '</cross-domain-policy>';
    $connection->send($xml."\0");
};

折腾一天都没找到解决办法 希望大神给指导下

3362 3 0
3个回答

walkor
  • 飞飞飞飞飞飞 2017-02-16

    麻烦您看下我下边图片这么写对吗,这么写还是报这个错误。

飞飞飞飞飞飞

我看了workerman的文档单独跑了一个socket服务 端口为843 用来返回xml文件,结果还是报这个错误。

  • 暂无评论
mdx2007

这个错和843 安全策略文件没有关系吧,
是不是flash文件的域名和网站的域名不同啊

  • 飞飞飞飞飞飞 2017-02-16

    这个是flash端报的错,我只负责写服务端的,也不太懂flash。 我自己用php写的一个客户端是可以正常访问服务端的,这个可能是什么问题,麻烦帮我分析下,谢谢。

  • 飞飞飞飞飞飞 2017-02-16

    flash的程序确实和phpsocket的服务端不在一个域名上,这个要怎么解决呢

  • mdx2007 2017-02-16

    放在一个域名下就解决了啊。

  • 飞飞飞飞飞飞 2017-02-16

    这是两个不同的项目 不能放在一个域名下,我增加了安全策略文件也没有效果。

  • mdx2007 2017-02-16

    这个限制服务端解决不了的,得改flash源码,让flash在不同源的域名下可以发起socket链接,具体怎么改我也不是太懂

  • continue 2017-06-26

    解決了嗎

年代过于久远,无法发表回答
🔝