Javascript hospedado externamente não consegue acessar a página do Visualforce
Na minha página do Visualforce, estou chamando um aplicativo Javascript hospedado externamente:
<apex:page>
<apex:iframe src="https://external.com/index.html" id="theFrame" />
</apex:page>
Este JS externo está tentando extrair dados de uma página do Visualforce localizada em:
fetch("https://mydomain.visualforce.com/apex/dataPage").then(...);
Eu adicionei o domínio externo às configurações CORS da minha organização
O problema é que o script externo não vê a página e obtém erros:
Recusou-se a conectar-se a 'https://java-business-5237-dev-ed.cs69.my.salesforce.com/visualforce/session?url=https%3A%2F%2Fjava-business-5237-dev-ed-- c.visualforce.com% 2Fapex% dataPage 'porque viola a seguinte diretiva de Política de Segurança de Conteúdo: "connect-src' self ' https://api.bluetail.salesforce.com https://staging.bluetail.salesforce.com https://preprod.bluetail.salesforce.com blob: * .visualforce.com https://java-business-5237-dev-ed--c.documentforce.com https://cs69.salesforce.com ".
Respostas
Você não pode acessar uma página do Visualforce de um site externo, a menos que crie um site do Salesforce e acesse-o.
Veja esta resposta para detalhes: Página Visual Force que pode ser acessada por qualquer pessoa
Parece que você precisa adicionar alguns dos domínios nas configurações da lista de permissões.
De acordo com este Permitir os domínios necessários :
Se você controlar o acesso de seus usuários ou servidores à Internet por meio de listas de permissões, adicione esses domínios para garantir que receberá todo o conteúdo do Salesforce.
- * .bluetail.salesforce.com
- * .content.force.com
- * .documentforce.com
- * .force.com
- * .forcesslreports.com
- * .forceusercontent.com
- * .lightning.com
- * .salesforce.com
- * .salesforceliveagent.com (usado com Chat, Omni-Channel e SOS)
- * .salesforce-Communities.com (necessário se você estiver usando Comunidades ou Site.com) trailblazer.me
- * .visualforce.com