Целевой атрибут для сообщения формы в Apache Royale

Есть ли способ установить целевой атрибут для публикации данных формы с использованием Apache Royale? Мы пытаемся свести к минимуму влияние перехода с Flex на Royale с прекращением использования Flash Player. Я не могу использовать BrowserWindow(URL, target), потому что это было бы сложнее с нашими старыми приложениями, использующими HTMLframes.

HTTPService позволит нам публиковать данные нашей формы по URL-адресу, но по умолчанию целевой атрибут имеет значение _blank. В приведенном ниже коде мы используем HTTPService для отправки наших данных по URL-адресу для обработки и отображения.

Как направить сообщение формы в целевой фрейм или есть ли способ переопределить цель частной переменной, для которой установлено значение _blank?

            var urlVars:URLVariables = new URLVariables();
            urlVars.set("EMPID", "8675309");                
            urlVars.set("FORM[NAME]", "Software, User");
            
            // create the httpservice instance
            var service:HTTPService = new HTTPService();
            service.url = "https://info-test.company.com/DaveTest.cfm";
            service.method = HTTPConstants.POST;
            
            service.addEventListener("complete", completeHandler);
            
            // add the variables
            service.contentData = urlVars;
            
            // trigger the service
            service.send();

person MOBRONCOS    schedule 26.08.2020    source источник


Ответы (1)


BrowserWindow относится к открытию нового окна. Похоже, вам нужен iframe. В пакете HTML есть компонент Iframe, но он появился в версии 0.9.8, которая еще не выпущена.

Вы также можете использовать <js:WebBrowser/>, который использует iframe под капотом.

Связь между iframes может осуществляться только с помощью postMessage.

Что-то вроде этого:

 window["top"]["postMessage"]("foo", '*');
 if (window.parent != window["top"]) {
   window.parent["postMessage"]("foo", '*');
 }

Если вы хотите отправить фактический результат POST, вы сможете сделать это, добавив «transferrable:

https://developer.mozilla.org/en-US/docs/Web/API/Transferable

person Harbs    schedule 27.08.2020