Сводка: у нас есть приложение-молния Salesforce, которое прекрасно работает в dev-организации, но как только мы создадим управляемый пакет и установим его в других организациях, если произойдет сбой с этой ошибкой CORS:
Не удалось выполнить «postMessage» в «DOMWindow»: предоставлен целевой источник (‘https://ashoktest -dev-ed.lightning.force.xn - com-to0a )
не соответствует происхождению окна получателя
( «https://ashoktest -dev-е изд - blusign.ap15.visual.force.xn - ком-to0a )
.
Вот шаги по воспроизведению проблемы в простом приложении молнии
1) Создайте пользовательскую кнопку по возможности по следующей формуле.
"/ Вершина / namespace__testHelloVFpage"
Назовите эту кнопку testHello. Перетащите и отпустите эту кнопку на странице возможностей, чтобы использовать ее.
2) Создайте страницу Visual Force, используя приведенный ниже код, и назовите ее testHelloVFpage
<apex:page sidebar="true" showHeader="true" standardController="Opportunity">
<apex:includeLightning />
<center><div id="lightning" style="margin-left:1%;max-width:75%;margin-bottom:2%;"/></center>
<script >
$Lightning.use("namespace:testHelloEsignPageApp", function() {
$Lightning.createComponent("namespace:testHelloEsignLC",
{},
"lightning",
function(component) {window.$Force = sforce;});
});
</script>
</apex:page>
3) Создайте приложение Lightning с помощью приведенного ниже кода и назовите его testHelloEsignPageApp
<aura:application access="GLOBAL" extends="ltng:outApp">
<aura:dependency resource="namespace:testHelloEsignLC"/>
</aura:application>
4) Создайте комплект компонентов Lightning, используя приведенный ниже код компонента, и назовите его testHelloEsignLC
<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,forceCommunity:availableForAllPageTypes,force:lightningQuickAction"
access="global" >
########### This is a Test Component ###############
<br></br>
*********** Hello ESign *************
</aura:component>
5) Теперь, когда мы нажмем пользовательскую кнопку, созданную на первом шаге, она покажет нам эту страницу молнии. Нет проблем
ПРИМЕЧАНИЕ: - nameSpace в приведенном выше коде является доменным именем.
НО
Как только мы создадим управляемый бета-пакет или управляемый пакет и установим его в любую редакцию для разработчиков или любые другие доменные организации, мы получим страницу BLANK
А ошибки в INSPECT Element Console следующие. Я также не получаю никаких журналов.
Не удалось выполнить «postMessage» в «DOMWindow»: целевой источник
при условии (‘https://ashoktest -dev-ed.lightning.force.xn - com-to0a ) делает
не соответствует происхождению окна получателя
. ( «https://ashoktest -dev-е изд - blusign.ap15.visual.force.xn - ком-to0a )
И
typeError - ошибка не определена
И
Uncaught TypeError: Невозможно прочитать свойство split из undefined
at displayErrorText (lightning.out.delegate.js? v = 1558631590920: 70)
at lightning.out.delegate.js? v = 1558631590920: 178
в XMLHttpRequest.xhr.onreadystatechange (lightning.out.delegate.js? v = 1558631590920: 112)
Попробовал следующее:
- проверил, если мы пропустили какие-либо пространства имен, и это не проблема.
- Пробовал URL-адрес источника жесткого кодирования в разделе navigateToURL, чтобы открыть страницу из компонента - не удалось.
- Попытка пропустить события любого рода, которые запускаются в компоненте для навигации и использовали window.open, ничего не сделала.
- Попытка открыть эту страницу в URL путем добавления идентификаторов вручную для обхода вызывающего компонента (подписать с компонентом BluSign в пользовательском интерфейсе) и получить ту же ошибку.
- Попытка включения режима разработки для пользователя.