2016-09-09 8 views
0

特定のサービスを使用してプロキシをチェックしようとしています。彼らはJSONを返すシンプルなAPIを持っています。私は私のサーバー上でこのJSONを取得したいと思います。サードパーティのJSを使用してJSONデータを取得する

CORSリクエストの問題またはSyntaxError: missing ; before statementメッセージが表示されます。私の「ボタン」をクリックする

<h1>Test Page</h1> 
<a href="#" onclick="checkProxy()">Test Button</a> 


<script> 
function checkProxy() { 
    console.log("Checking..."); 
    $.ajax({ 
    url: 'http://api.ip2proxy.com/?ip=105.159.246.30&key=demo', 
    dataType: 'jsonp', 
    success: function(data){ 
     console.log(data); 
    } 
    }); 
} 

が目的球を呼び出し、前述の構文エラーを返します。

は、ここに私のコードです。データ型をJSONに変更すると、CORSエラーが発生します。

奇妙なことは、私が別のStackOverflowスレッドで見つけた別のURL(例:http://www.locationbox.com.tr/locationbox/services?Key=3430000202000191008400080609030X20201090060050260003069&Cmd=IlList)を使用すると、データが正常に記録されることです。

+0

次に、データが一般に公開されることを意図していない可能性があります。データソースのAPIをチェックしましたか? –

答えて

1

私のサーバーにこのJSONを取得したいと思います。

あなたはそれを行うには、サーバー上でを実行するコードを記述する必要があります。コードが失敗するのは、ブラウザで実行していることです。Same Origin Policyが表示されます。ページのオリジンには、CORS経由でAPIエンドポイントからのアクセスが許可されていません。彼らがあなたにアクセスを許可しないか、代わりに使うことができるJSONPエンドポイントを提供しない限り、ブラウザから直接それを照会することはできません。

+0

PHPを使用してJSONを取得する必要がありますか? –

+0

@DanielJ:いいえ。でも、サーバー上でフェッチする必要があります。 PHP、Python、JavaScript(NodeJS、JVM)、Java、C#またはVB .NETで...--) –

+0

ああ、そうです。時には私は、サーバー側が常にPHPを意味するわけではないことを忘れています!しかし、私の場合はそうです。 :) どうもありがとうございました!これは私の問題を解決しました。私は今データを取得することができます。 –

関連する問題