2012-07-31 68 views
10

Tôi đang sử dụng cuộc gọi API này để Google Maps để có được những vĩ độ và kinh độ của một mã bưu chínhMã bưu chính Mã địa lý API Google Maps và đặt Mã quốc gia?

http://maps.googleapis.com/maps/api/geocode/json?address=2340&sensor=false

Mã bưu chính là ở Úc. Cuộc gọi API này trả về các vị trí trên toàn thế giới với mã bưu điện khớp một phần trong địa chỉ.

Có thông số nào tôi có thể sử dụng để đặt quốc gia thành Úc không?

Cảm ơn

Trả lời

20

Cách đúng để làm điều này không phải là qua khu vực xu hướng mà là sử dụng component filtering:

http://maps.google.com/maps/api/geocode/json 
    ?components=country:AU|postal_code:2340 
    &sensor=false 

Một số cuộc biểu tình:

Xin lưu ý rằng nếu bạn sử dụng tham số thành phần, bạn không cần phải chỉ định tham số địa chỉ.

+0

Tại sao nó không hoạt động với mã bưu điện Queensland? http://maps.google.com/maps/api/geocode/json?components=country:AU|postal_code:4072&sensor=false –

2

Các tài liệu nói rằng Region Biasing được dựa trên CcTLDs, mà sẽ làm cho Úc au (đã không thử nó bản thân mình).

Mặc dù nó cũng khẳng định điều này:

Lưu ý rằng xu hướng chỉ thích kết quả cho một lĩnh vực cụ thể; nếu có nhiều kết quả có liên quan hơn bên ngoài miền này, chúng có thể được bao gồm.

+1

Tôi thấy rằng '? Address = 2340, au & sensor = false' chỉ trả về kết quả từ Úc là hợp lệ? – Anagio

+1

Có @Anagio thats chính xác, đặt một ", usa" sẽ cho kết quả chỉ hiển thị kết quả tại Hoa Kỳ, tuy nhiên điều đó chỉ có nghĩa là nó sẽ không nhìn vào bất kỳ quốc gia nào khác, nó không có nghĩa là nó sẽ cho bạn một kết quả chính xác, Ví dụ nếu tôi đặt 93274, au nó mang lại cho tôi một số thị trấn ngẫu nhiên ở Úc, nhưng không phải thị trấn ở Úc cho mã Zip đó ... Dù lý do là gì, nếu bạn nhắm mục tiêu một quốc gia cụ thể, tốt nhất là tiếp tục và sử dụng những gì bạn đề xuất . Tôi biết nó được một thời gian cho một phản ứng về điều này, nhưng tôi chỉ xảy ra để vấp ngã khi nó. –

+0

Để thêm vào câu trả lời của Aaron - truy vấn ở trên không rõ ràng giữa địa chỉ ở Úc với SỐ TIỀN SỐ 2340 và ngoại ô có mã POSTCODE là 2340. Goggle xuất hiện để tìm kiếm số đường phố đầu tiên có nghĩa là xác suất quay trở lại thị trấn WoopWoop tỷ lệ thuận với giá trị số của mã bưu điện. Ít khả năng trong QLD (mã bưu chính 4000 cộng) so với NSW (mã bưu điện 2000 +) Lọc thành phần là chính xác. Sử dụng: & components = country: AU | postal_code: 2340 trong url –

Các vấn đề liên quan