Ao tentar fazer uma solicitação HTTP usando XMLHttpRequest de um arquivo local, ela basicamente falha devido à Access-Control-Allow-Origin
violação.
No entanto, eu mesmo estou usando a página da Web local, por isso fiquei pensando se há alguma maneira de fazer o Google Chrome permitir essas solicitações, que são de um arquivo local para um URL na Internet.
Por exemplo, $.get('http://www.google.com/')
falha ao executar em um arquivo local, mas eu próprio escrevi a página e a estou usando, por isso seria extremamente útil se eu pudesse suprimi-la e carregar a URL.
Então, como posso permitir que o Google Chrome carregue URLs usando XMLHttpRequest de arquivos locais?
Access-Control-Allow-Origin: null
pelo site funciona. (ofc. não pelo google.com.br)Respostas:
chrome de inicialização com
--disable-web-security
No Windows:
No Mac:
Isso permitirá solicitações entre domínios.
Não sei se isso também funciona para arquivos locais, mas avise-nos!
E mencione, isso faz exatamente o que você espera, desabilita a segurança da web, portanto, tenha cuidado com ela.
fonte
XMLHttpRequest cannot load file:///<my_local_file>. Cross origin requests are only supported for HTTP.
portanto, a declaração sobre o navegador Safari a partir deste segmento não é mais válida.Usar o
--disable-web-security
switch é bastante perigoso ! Por que desativar a segurança enquanto você pode permitir que XMLHttpRequest acesse arquivos de outros arquivos usando o--allow-file-access-from-files
switch?Antes de usar esses comandos, encerre todas as instâncias em execução do Chrome.
No Windows:
No Mac:
Discussões sobre esse "recurso" do Chrome:
fonte
chrome://flags
Versão para Mac. A partir do terminal:
fonte
No Ubuntu:
Para mais detalhes / opções:
http://peter.sh/experiments/chromium-command-line-switches/
Referenciado de
fonte