Isso é "Same Origin Policy" (Política de Mesma Origem). Os navegadores
só permitem o compartilhamento de recursos entre páginas se elas
tiverem exatamente o mesmo protocolo, o mesmo domínio e a mesma porta.
Se forem diferentes, no caso é outro domínio, o código Javascript da
página original não pode ler propriedades da outra, não pode acessar
elementos do DOM, nem fazer requisições Ajax para ela.
Isso pode ser resolvido retornando os dados em formato JSONp e
inserindo na página que fez a requisição, mais ou menos assim:
var url='
http://www.url.com/retorno.json'
s=document.createElement('script')
s.setAttribute('src',url)
document.getElementsByTagName('head')[0].appendChild(s)
/* Agora você tem acesso aos dados que foram retornados como javascript */
OU você pode usar o CORS, que é uma troca de cabeçalhos entre o
navegador e o servidor, usando o método HTTP OPTIONS, antes da
requisição real com GET ou POST. Nessa requisição OPTIONS o navegador
envia um header "Origin" e espera por um header
"Access-Control-Allow-Origin" com o mesmo valor ou com o valor "*". Se
o header "Access-Control-Allow-Origin" contiver um dos valores
esperados o navegador em seguida faz a requisição GET ou POST. Pra
utilizar, é só colocar no seu arquivo que recebe a requisição (no
csthost.com):
<?php
header('Access-Control-Allow-Origin: *');
?>
Ou
<?php
header('Access-Control-Allow-Origin:
http://localhost/');
?>
E fazer a requisição normal.
Att,
Fonte: JS Avançado - Elcio Ferreira
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo
> "PHP-MYSQL-BR" dos Grupos do Google.
> Para ver esta discussão na web, acesse
>
https://groups.google.com/d/msg/php-mysql-br/-/wvaoDKZIWj0J.
Bruno Monteiro
br...@trupe.net
Trupe - Agência Criativa
Aclimação – São Paulo – SP – Brasil
(11) 2861.1590