2016-04-06 7 views
0

まあまあ...私はこの問題を解決するために多くを試してきましたが、ここや他のサイトでいくつかの解決策を見つけました...しかし、私はこの問題を解決しません!問題は何だ、JSONドメイン間エラー

function refreshRadioStats() 
{ 
    jQuery.support.cors = true; 
    $.get('http://raphaleao.com/json', function(data){ 
     var templateStats = '<span class="glyphicon glyphicon-music"></span> '+ j_lang[0] + 
          '<marquee><h4><i>'+data.musica_atual+'</i></h4></marquee><br>'+ 
          '<span class="glyphicon glyphicon-headphones"></span> '+j_lang[1]+': <b>'+data.ouvintes_conectados+ 
          '</b><br>'+ 
          '<span class="glyphicon glyphicon-user"></span> '+j_lang[3]+': <b>'+locutor+'</b><br><br>'+ 
          '<button type="button" class="btn btn-info" id="refreshstadistics" style="width:100%"><span class="glyphicon glyphicon-refresh"></span> '+ j_lang[2] +'</button>'; 
     $('#resultse').append(templateStats); 
    },'json'); 
} 

OK:

まあ本当の問題は、私はこのコードを持っているそれは簡単です...何ですか? 問題は次のとおりです。スクリプトは明らかにウェブサイトhttp://raphaleao.com/jsonにアクセスできません。このため、動作しません。 問題:

XMLHttpRequestはhttp://raphaleao.com/jsonをロードできません。 'Access-Control-Allow-Origin'ヘッダーには複数の値 '*、*'が含まれますが、1つだけが許可されます。 Origin 'Stackは2つ以上のリンクを投稿できないように'アクセスが許可されていません。私はJSONに他のサイトでテストされ、完全に動作したので

スクリプトは、動作します。私はすでにweb.configファイルでこれを入れている:

<httpProtocol> 
     <customHeaders> 
     <add name="Access-Control-Allow-Origin" value="*" /> 
    </customHeaders> 
</httpProtocol> 

と同じ問題、君たちはこれで私を助けることができますか?私は修正 まあを取得し、後にいくつかのものと@mattferdererが私の心を開いてみてください、私はこのすべてで何が起こっているかを考え出した


に...

まず私が削除しましたweb.config側にあり、ヘッダー()の機能だけを残してください。さて、最初の問題は修正されました(笑)。

と私はなぜ$ .getJSONを(考え出した、より)は(少なくとも私はPHPでそれをやった)だけ追加し、それは簡単です...これを他のウェブサイトの情報をロードしません。私の場合は

header('Content-Type: text/javascript'); 

、ページがフォーマットでtext/htmlのので、$ .getJSON()は、そのページにすべての情報をロードすることはできません!

おかげで、ひどい英語のために申し訳ありません!

+0

バックエンドとは何ですか?アクセス制御の原点をどこかに間違って設定するか、2つの異なるweb.configファイルの値をマージする必要があります。 – Jack

+0

ターゲットサーバは 'Access-Control-Allow-Origin'ヘッダを提供しなければなりません。表示されない場合は、ブラウザからコンテンツにアクセスできません。 – Pointy

+0

@Jackはどういう意味ですか?私はこの世界では新しいです、残念です:( –

答えて

1

access-control-allow-originが2回使用されているため、web.configからaccess-control-allow-originを削除してみます。レスポンスヘッダーを見ると、次のようになります。

HTTP/1.1 200 OK 
Content-Type: text/html 
Content-Encoding: gzip 
Vary: Accept-Encoding 
Server: Microsoft-IIS/7.5 
X-Powered-By: PHP/5.5.11 
Access-Control-Allow-Origin: * 
X-Powered-By: ASP.NET 
Access-Control-Allow-Origin: * 
Date: Wed, 06 Apr 2016 14:43:54 GMT 
Content-Length: 387 
+0

あなたはこれをするのを忘れています...ありがとう兄貴! –

関連する問題