私がしようとしているのは、ip-lookupとgeo-lookupのサービスに、訪問者の場所にマーカーを配置することです.. 今のところ。JQuery/json-callsを入れ子にしたときにGETエラーが発生する:
これは、後で私たちのサイトにアクセスしている場所からのユーザーの場所をデータベースに供給するために、ページに配置されるスクリプトとして使用されます。 次に、dbから読み取って、ユーザーがいるマップ上にドットを生かす。一種のダッシュボード。
とにかく..
//
[ Above this i've declared a googlemap, hence the google.maps-references ]
$('#addButton').click(function(){
var ipurl = 'http://jsonip.appspot.com/';
//displays the users ip-adress in json-format
$.getJSON(ipurl,function(json){
var ip = json.ip;
//gets the ip from the above url
var geourl='http://freegeoip.appspot.com/json/' + ip;
//gets location details from the ip in json-format
$.getJSON(geourl,function(json){
var myLatlng = new google.maps.LatLng(json.latitude, json.longitude);
//set the position for the map
var marker = new google.maps.Marker({
position: myLatlng,
title:"Hello World!"
});
marker.setMap(map);
});
});
});
私はこれを実行しようとしているとき、私はスクリプトを実行しようとしたとき、私はGET-エラーか何かを得ているという結論に来ていると思います2番目のJSON関数。それは単にそれをスキップします。
何が原因なのでしょうか?
EDIT:
私は2番目のJSON要求するための変数を変更しました。そして、それは動作します。しかし、それが私のローカルマシン上にある間、私はそれを試してみるとき。 Safariで。
ChromeとFirefoxで試してみました。ローカルとサーバーの両方。ちょうど仕事がありません。
レッドは放火犯でテキストをマーク:
http://example.com/json/ 200 OK 168ms
$(document).ready(function(){
$('#addButton').click(function(){
var ipurl = 'http://jsonip.appspot.com/';
$.getJSON(ipurl,function(json){
var ip = json.ip;
var url='http://freegeoip.appspot.com/json/' + ip;
$('#result').append(
'<p>1: ' + ip + '</p>' +
'<p>2: ' + url + '</p>');
$.getJSON(url,function(json2){
$('#result').append('<p>' + json2.longitude + '/' + json2.latitude + '</p>');
});
});
});
});
Firebugの「ネット」タブやChromeのリソーストラッカーは、正確にどのようなエラーが発生したかについて何を言っていますか? –
Pekkaが尋ねるように、正確に何がネットインスペクタに記録されますか?それはGETリクエストかOPTIONSリクエストですか? –