将 Google 地理编码限制为仅真实的国家/地区结果
Restrict Google Geocoding to only true country results
目前,我可以通过我的 Google 地理编码 API 发送 shsihsigsuygdjhgadjhg
,它 return 是一个 APPROXIMATE
位置类型 - 尽管我刚编的!
根据文档,我已将请求限制为仅 GB(英国),但如何将其限制为仅 return 个 true
位置?
参数:
$param = ['address' => 'shsihsigsuygdjhgadjhg','components' => 'country:GB'];
响应:
$response = \Geocoder::geocode('json', $param);
$decoded_response = json_decode($response);
响应是:
+"results": array:1 [▼
0 => {#314 ▼
+"address_components": array:1 [▼
0 => {#313 ▼
+"long_name": "United Kingdom"
+"short_name": "GB"
+"types": array:2 [▼
0 => "country"
1 => "political"
]
}
]
+"formatted_address": "United Kingdom"
+"geometry": {#320 ▼
+"bounds": {#131 ▶}
+"location": {#321 ▶}
+"location_type": "APPROXIMATE"
+"viewport": {#323 ▶}
}
+"partial_match": true
+"place_id": "ChIJqZHHQhE7WgIReiWIMkOg-MQ"
+"types": array:2 [▼
0 => "country"
1 => "political"
]
}
]
+"status": "OK"
}
如何确保 returns ZERO_RESULTS
的大概位置?
不要添加组件字段,而是将国家/地区值添加到地址字段本身。 component 字段尝试获取您指定值内的组件。它无法识别您传入的地址,但它可以识别国家/地区,因此您得到的是部分匹配项。
而不是
$param = ['address' => 'shsihsigsuygdjhgadjhg','components' => 'country:GB'];
试试,
$param = ['address' => 'shsihsigsuygdjhgadjhg, GB'];
第二次实施的结果为零。
目前,我可以通过我的 Google 地理编码 API 发送 shsihsigsuygdjhgadjhg
,它 return 是一个 APPROXIMATE
位置类型 - 尽管我刚编的!
根据文档,我已将请求限制为仅 GB(英国),但如何将其限制为仅 return 个 true
位置?
参数:
$param = ['address' => 'shsihsigsuygdjhgadjhg','components' => 'country:GB'];
响应:
$response = \Geocoder::geocode('json', $param);
$decoded_response = json_decode($response);
响应是:
+"results": array:1 [▼
0 => {#314 ▼
+"address_components": array:1 [▼
0 => {#313 ▼
+"long_name": "United Kingdom"
+"short_name": "GB"
+"types": array:2 [▼
0 => "country"
1 => "political"
]
}
]
+"formatted_address": "United Kingdom"
+"geometry": {#320 ▼
+"bounds": {#131 ▶}
+"location": {#321 ▶}
+"location_type": "APPROXIMATE"
+"viewport": {#323 ▶}
}
+"partial_match": true
+"place_id": "ChIJqZHHQhE7WgIReiWIMkOg-MQ"
+"types": array:2 [▼
0 => "country"
1 => "political"
]
}
]
+"status": "OK"
}
如何确保 returns ZERO_RESULTS
的大概位置?
不要添加组件字段,而是将国家/地区值添加到地址字段本身。 component 字段尝试获取您指定值内的组件。它无法识别您传入的地址,但它可以识别国家/地区,因此您得到的是部分匹配项。
而不是
$param = ['address' => 'shsihsigsuygdjhgadjhg','components' => 'country:GB'];
试试,
$param = ['address' => 'shsihsigsuygdjhgadjhg, GB'];
第二次实施的结果为零。