Загрузить "Неподключить вызов в StartUpload failed" при использовании в приложении Facebook Canvas в Chrome и IE

Я реализовал стандартную версию Flash Uploadify плагина jQuery в приложении холста на facebook.

Загрузка в Firefox отлично работает. Но когда я пытаюсь запустить загрузку в Chrome или IE, это сообщение не работает с этим сообщением в консоли:

Uncaught Call to StartUpload failed

Для тех, кто не знаком с приложениями для холдинга Facebook, это страницы PHP, работающие в iframe в Facebook, что может привести к этой проблеме - хотя это не работает, когда вы запускаете за пределами рамки.


Я также получаю эти ошибки в консоли Chrome:

Unsafe JavaScript attempt to access frame with URL https://apps.facebook.com/[app name]/[page name]/ from frame with URL https://[app domain]/[page path]. The frame being accessed set 'document.domain' to 'facebook.com', but the frame requesting access did not. Both must set 'document.domain' to the same value to allow access.


Любые идеи, что может произойти? Я уже пробовал настроить crossdomain.xml для Flash без успеха.

Ответы

Ответ 1

В соответствии с другим тегом с изменением document.domain на совершенно другой домен, возможно, что домен домена изменится на суффикс текущего домена.

Если "[домен приложения]" можно изменить, вы можете попробовать изменить [домен приложения] на " https://[app domain].apps.facebook.com/" и запустите javascript с страницы iframe при загрузке iframe

document.domain = 'facebook.com';

Но не уверен, есть ли какие-либо проблемы добавления другого домена в качестве суффикса (это законно?).

Ответ 2

У меня была проблема давным-давно с facebook и crossdomain, вы пробовали

header('P3P: CP="CAO PSA OUR"');

в вашем php файле?

Ответ 3

1. Попробуйте изменить свои URL-адреса в настройках api, как name_api_to_download.domain.com или domain.com, и использовать только субдомен ssl или домен true

2.-использовать запрос ajax (post или get) для загрузки файлов, а не iframes, потому что вы используете родительский iframe api, и он не доступен

3.-use в name_api_to_download допустимый заголовок (поскольку тип MIME - это приложение/pdf)