【发布时间】:2012-05-25 08:22:01
【问题描述】:
目前,我正在按照此处的建议在 Windows Azure WebRole 中运行 Unity Web Player 应用程序。
Deploy Unity3D in Windows Azure
我的统一应用程序有点卡住了。我刚刚在 Windows azure 上部署了我的应用程序。有关详细信息,我的网络播放器文件位于 siteroot/0/.unity3d
我使用 Uniweb 与我的网络角色进行通信(与 .unity3d 文件所在的角色相同,因此,它是同一个域)
但是当我将 HttpPost 发送到我的 http://asp.net 页面时,我得到了这个异常:SocketPolicyClient1: Incoming GetPolicyStreamForIP
SocketPolicyClient1: About to BeginConnect to x.x.x.x:843
SocketPolicyClient1: About to WaitOne
SocketPolicyClient1: WaitOne timed out. Duration: 3002.1718
SocketPolicyClient1: Caught exception: BeginConnect timed out
Exception: Unable to connect, as no valid crossdomain policy was found
但我有一个位于 siteroot/0/ 的 crossdomain.xml
xml version="1.0"
cross-domain-policy
allow-access-from domain="*" to-ports="1-65536"
cross-domain-policy
我不知道为什么我的统一应用程序不与我的(相同的)http://asp.net webrole 通信。当我构建 Windows 应用程序时它运行良好,但使用网络播放器它失败了。
非常感谢!
【问题讨论】:
-
你有我可以测试的样本链接吗?这将有助于我更快地理解问题,然后我可以提供更多建议。
-
很抱歉,我无法提供任何链接,但我可以回答您的任何问题。
-
暂时使用 crossdomain.xml 有点奇怪,因为它们在同一个域中。我打开了一个端点来为端口 843 授权 tcp。
-
如果是这种情况,您需要打开一个 TCP 端点并将其设置为使用 843 端口并编写代码以使用 RoleEnvironment.* 方法绑定您的服务。