Tôi nghĩ rằng bạn sẽ cần Tiger/Line files như tham chiếu trong answer này. Bạn có thể sử dụng dữ liệu để generate polygons. Sử dụng Geocoder.geocode
để tìm kiếm tên thành phố. Đây là một chức năng dựa trên lời hứa mà tôi sử dụng:
function locateAddress(address) {
var deferred = $q.defer();
if(!address) { $q.resolve(null); return; }
var geocoder = new google.maps.Geocoder();
var a = address;
if(_.isObject(a)) {
a = (a.line1 || '') + ' ' + (a.city || '') + ' ' + (a.state || '') + ' ' + (a.zip || '');
}
geocoder.geocode({ 'address' : a}, function(results, status) {
if(status === 'ZERO_RESULTS') {
deferred.resolve(null);
return;
}
var c = results[0].geometry.location;
deferred.resolve({latitude: c.lat(), longitude: c.lng()});
}, function(err) {
deferred.reject(err);
});
return deferred.promise;
}
Nguồn
2015-07-26 18:14:25
Không có API nào (hiện tại) cung cấp dữ liệu đó. – geocodezip
Xin chào các nhà cung cấp dịch vụ và nhà cung cấp! ** API bên ngoài hoàn toàn đúng chủ đề **. Nếu bạn gặp vấn đề với cấu trúc của câu hỏi, hãy cho chúng tôi biết trong phần bình luận! Nếu một API hiện không tồn tại cho một đối tượng địa lý, thì đó vẫn là câu trả lời hợp lệ. Khi điều đó thay đổi tại Google, thì câu hỏi này có thể được cập nhật bằng câu trả lời mới giải thích cách sử dụng API mới đó. –
Tôi cũng đang tìm kiếm một API – Daniel