Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
Locked
0

How can I serve crossdomain.xml file on a specific port?

Guest
Mar 03, 2015 Mar 03, 2015

Let me introduce my problem step by step:

I was using a socket connection on the address www.mydomain.com:1925 to provide a chat service for my users. When I moved to cloudflare, I could not connect to port 1925 directly because of the fact that my requests were reaching my origin server over cloudflare and the port was changing.

How did I solve it? I created a subdomain chat.mydomain.com whose DNS settings point to my origin server not cloudflare. I bypassed cloudflare by this way and I connected my chat service by using chat.mydomain.com:1925 on the browser. So far so good.

Here is the problem. I am also using Flash and AS3. It is the core of my game on the site. Chat is working on html and my game in flash is in some part of my website. In flash, I was sending scores of players using again a socket connection on www.mydomain.com:1925 by a different namespace.(Since swf's host and url's host matched, I didn't have any problem I think).Since I have changed the domain to chat.mydomain.com:1925, Flash started to request a crossdomain.xml on chat.mydomain.com:1925. There is a crossdomain.xml file on chat.mydomain.com however I cannot serve it from chat.mydomain.com:1925. Here is my code:

Security.loadPolicyFile("https://chat.mydomain.com/crossdomain.xml");

var urlLoader:URLLoader = new URLLoader ();

var url:String = "https://chat.mydomain.com:1925/socket.io/1/";

var request:URLRequest = new URLRequest(url);

request.method = URLRequestMethod.POST; 

urlLoader.dataFormat = URLLoaderDataFormat.TEXT;

urlLoader.addEventListener(Event.COMPLETE, completeHandler);

urlLoader.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);

urlLoader.load(request);

Since flash cannot find crossdomain.xml by getting 404, the requests in my code do not work. How can I solve this problem? How can I use the origin chat.mysite.com:1925?

585
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Mar 05, 2015 Mar 05, 2015
LATEST

You're going to have to host it in a way that lets you serve HTTP/S content (at least the crossdomain.xml) on port 80 or 443 respectively.

The Flash Player Security Whitepaper has an excellent breakdown of the requirements for crossdomain policy stuff:

White paper: Adobe Flash Player 10 security | Adobe Developer Connection

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines