"Ошибка вызова метода в NPObject!" для гибкой глубокой связи - PullRequest
1 голос
/ 09 апреля 2011

У меня есть гибкое приложение, размещенное в домене A и обслуживаемое через веб-страницу в домене B. Я включил междоменный сценарий; на веб-странице домена B у меня есть строка

params.allowscriptaccess = "always";

и в коде приложения у меня есть

flash.system.Security.allowDomain("*");

и для хорошей меры,

flash.system.Security.allowDomain("keonehon.com"); // domain A

ExternalInterface звонки, кажется, работают; при запуске приложение вызывает функцию javascript, а веб-страница вызывает функцию обратно для передачи параметра.

if (ExternalInterface.available){
                ExternalInterface.call("SWFLoadComplete");
                //lblMessage.text = "Data Sent!";
            }

function SWFLoadComplete(){
            callNewCarWithUser();
        }

        function callNewCarWithUser()
        {
          var user_id = document.getElementById('txtUserId').value;
          var room_id = document.getElementById('txtRoomId').value;
          getTheFlexApp().newCarWithUser(user_id, room_id);
        }

И это работает правильно. Так что да. Кажется, работает нормально, нет?

ОДНАКО глубокое связывание не работает, так как установка параметра флекс #state=____ в URL (либо путем ввода чего-либо, либо путем перемещения назад с помощью кнопки назад) приводит к ошибке javascript в строке 435 из history.js, он же

getPlayer().browserURLChange(flexAppUrl); 

Кажется, что существует какая-то проблема междоменной безопасности, хотя я поставил строку flash.system.Security.allowDomain("*");. Вы можете увидеть, что при одинаковом домене и кросс-домене наблюдается разное поведение, сравнивая две страницы с одинаковыми файлами html и swf, просто междоменный в одном случае и один домен в другом:

кросс-домен: http://keonehon.com/gongos/dreamcar.html. тот же домен: http://rails.mit.edu/gongos/dreamcar.html

Что, черт возьми, происходит?

Ответы [ 2 ]

1 голос
/ 20 апреля 2011

Я не уверен, связано ли это вообще, но я все время получаю эту ошибку с ExtJS, и проблема фактически сводится к простой синтаксической ошибке (отсутствует скобка])

0 голосов
/ 20 апреля 2011

Вы пробовали allowScriptAccess вместо этого?(это может быть с учетом регистра, если я правильно помню)

Если это не сработало, это помогло бы увидеть больше кода или образец страницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...