我有一个使用Yahoo Geocoding Placefinder API的网络应用程序,它一直运行到今天早些时候。它只是随机退出工作。他们不再支持了吗?我已经遍布网络了,我找不到任何有关他们的支持,但我的代码不再有效。这是我的代码......
function geocode_yahoo($address,$city,$state,$country) {
$address = array($address, $city, $state, $country);
$address = array_filter($address);
$address = urlencode(implode(', ', $address));
$appid = 'CYxSRa64';
$url = 'http://where.yahooapis.com/geocode?location='.$address.'&flags=J&appid='.$appid;
$data = file_get_contents($url);
if ($data != '') {
$data = json_decode($data);
if ($data && $data->ResultSet && $data->ResultSet->Error == '0' && $data->ResultSet->Found) {
return (object) array('lat'=>$data->ResultSet->Results[0]->latitude, 'lng'=>$data->ResultSet->Results[0]->longitude);
}
}
return false;
}
答案 0 :(得分:5)
您的代码没有任何问题,服务已被停止。
请注意,http://where.yahooapis.com现在返回404页。
该服务将于2012年11月底退休,但仍在运行,以便为开发人员提供时间迁移到替换的Yahoo BOSS服务:http://developer.yahoo.com/boss/geo/
答案 1 :(得分:0)
此处没有任何内容表明该服务将被停止:https://developer.yahoo.com/boss/geo/docs/free_YQL.html#table_pf
事实上,此页面底部有一个链接:https://developer.yahoo.com/boss/geo/到免费的YQL版本。