Apoio à Partilha de Recursos de Infra-Estrutura Cruzada (CORS)

Tradução automática de Deepl

Alguma vez criou um pedido de dados HTTP apenas para ser atingido por um erro vermelho “o acesso ao pedido HTML foi bloqueado pela política cors” ?

Quando o seu sítio está no mesmo domínio que o servidor do serviço web, não há problema. No entanto, este não é o caso quando efectua um pedido de origem cruzada. O acesso é negado devido à segurança do navegador que impede os pedidos HTTP para outro domínio. O resultado? Um erro de política CORS.

Para o ajudar a permitir explicitamente certos pedidos de origem cruzada no seu servidor, 4D suporta agora o protocolo CORS. O acesso a dados com pedidos de origem cruzada acabou de se tornar mais fácil!

O protocolo CORS impede que as páginas web possam fazer pedidos para outros domínios que não o seu próprio. Mas, por vezes, pode ser necessário permitir que outros sítios façam pedidos de dados HTTP ao seu servidor. Felizmente, 4D fornece duas formas de definir as regras CORS e permite explicitamente certos pedidos de origem cruzada:

  • através de programação, ou
  • através de definições de bases de dados.

gerir cors através de programação

Pode activar CORS com dois comandos:

//CORS Domains Settings
$settings
:=New collection
$settings .push(New object("host"; "127.0.0.1:8888"; "methods"; "get;put;post"))
$settings .push(New object("host"; "Web CORS enabled"; "methods"; "get;post"))

//enable CORS
WEB SET OPTION (//CORS Domains Settings;1)

$settings
WEB SET OPTION (Web CORS settings; )

//start web server to apply CORS settings
WEB START SERVER

$hostWSCORSSettings$setting:=WEB Server(Web host database server)
$setting :=New object

//Enable CORS

$setting .CORSEnabled:=True

//CORS Domains Settings //start web server and apply CORS settings $setting .
:=New collection
$setting .CORSSettings.push(New object("host"; "127.0.0.1:8888"; "métodos"; "get;put;post")) $setting .CORSSettings.push(New object("host"; " "; "métodos"; "get;post"))

$hostWS .start( xml-ph-0

gerir CORS através de definições de base de dados

Estão disponíveis novas definições no separador Definições > Web > Opções (II):

Basta adicionar os nomes de domínio permitidos e os métodos disponíveis. Quando o servidor for iniciado a seguir, eles serão utilizados automaticamente.

Fabrice Mainguené
- Proprietário do produto ->p>Fabrice Mainguené juntou-se à equipa do Programa 4D em Novembro, 2016. Como Proprietário do Produto, está encarregado de escrever as histórias dos utilizadores, traduzindo-as depois para especificações funcionais. O seu papel é também o de assegurar que a implementação da funcionalidade entregue vai ao encontro das necessidades do cliente.Após a obtenção da licenciatura em Informática no CNAM, Fabrice juntou-se a uma pequena empresa editora de software como programador Windev. Depois trabalhou para diferentes empresas nas áreas da indústria e comércio como programador Windev e web developer, bem como como consultor técnico sobre novas funcionalidades.