رمزگذاری جغرافیایی مکان به شما امکان می دهد یک آدرس را از شناسه مکان بازیابی کنید.
شناسههای مکان به طور منحصربهفردی یک مکان را در پایگاه داده Google Places و در Google Maps شناسایی میکنند. زمانی که آدرسی را ژئوکد میکنید، شناسههای مکان را بازیابی کنید. همچنین میتوانید شناسه مکان را از بسیاری از APIهای دیگر، مانند جزئیات مکان (جدید) ، جستجوی متن (جدید) و جستجوی نزدیک (جدید) بازیابی کنید.
درخواست های کدگذاری جغرافیایی را قرار دهید
درخواست geocoding مکان یک درخواست HTTP GET به شکل زیر است:
https://geocode.googleapis.com/v4beta/geocode/places/PLACE_ID
جایی که PLACE_ID حاوی شناسه مکان مکان مورد علاقه است.
همه پارامترهای دیگر را به عنوان پارامترهای URL یا برای پارامترهایی مانند کلید API یا ماسک فیلد در سرصفحه ها به عنوان بخشی از درخواست GET ارسال کنید. به عنوان مثال:
https://geocode.googleapis.com/v4beta/geocode/places/ChIJj61dQgK6j4AR4GeTYWZsKWw?key=API_KEY
یا در دستور curl:
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ "https://geocode.googleapis.com/v4beta/geocode/places/ChIJj61dQgK6j4AR4GeTYWZsKWw"
از OAuth برای درخواست استفاده کنید
Geocoding API v4 از OAuth 2.0 برای احراز هویت پشتیبانی می کند. برای استفاده از OAuth با Geocoding API، نشانه OAuth باید دامنه صحیحی را به آن اختصاص دهد. Geocoding API از حوزه های زیر برای استفاده در geocoding مکان پشتیبانی می کند:
-
https://www.googleapis.com/auth/maps-platform.geocode
— با تمام نقاط پایانی Geocoding API استفاده کنید. -
https://www.googleapis.com/auth/maps-platform.geocode.place
— فقط باGeocodePlace
برای کدگذاری جغرافیایی مکان استفاده کنید.
همچنین، میتوانید https://www.googleapis.com/auth/cloud-platform
scope عمومی برای تمام نقاط پایانی Geocoding API استفاده کنید. این محدوده در طول توسعه مفید است، اما نه تولید، زیرا یک محدوده کلی است که اجازه دسترسی به تمام نقاط پایانی را می دهد.
برای اطلاعات بیشتر و مثالها، استفاده از OAuth را ببینید.
پاسخ های کدگذاری جغرافیایی را قرار دهید
مکان جغرافیایی یک شی GeocodeResult
را برمیگرداند که نشاندهنده مکان مربوط به شناسه مکان است.
شیء کامل JSON به شکل زیر است:
{ "place": "//places.googleapis.com/places/ChIJj61dQgK6j4AR4GeTYWZsKWw", "placeId": "ChIJj61dQgK6j4AR4GeTYWZsKWw", "location": { "latitude": 37.4220541, "longitude": -122.08532419999999 }, "granularity": "ROOFTOP", "viewport": { "low": { "latitude": 37.4209489697085, "longitude": -122.08846930000001 }, "high": { "latitude": 37.4236469302915, "longitude": -122.0829156 } }, "formattedAddress": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "postalAddress": { "regionCode": "US", "languageCode": "en", "postalCode": "94043", "administrativeArea": "CA", "locality": "Mountain View", "addressLines": [ "1600 Amphitheatre Pkwy" ] }, "addressComponents": [ { "longText": "1600", "shortText": "1600", "types": [ "street_number" ] }, { "longText": "Amphitheatre Parkway", "shortText": "Amphitheatre Pkwy", "types": [ "route" ], "languageCode": "en" }, { "longText": "Mountain View", "shortText": "Mountain View", "types": [ "locality", "political" ], "languageCode": "en" }, { "longText": "Santa Clara County", "shortText": "Santa Clara County", "types": [ "administrative_area_level_2", "political" ], "languageCode": "en" }, { "longText": "California", "shortText": "CA", "types": [ "administrative_area_level_1", "political" ], "languageCode": "en" }, { "longText": "United States", "shortText": "US", "types": [ "country", "political" ], "languageCode": "en" }, { "longText": "94043", "shortText": "94043", "types": [ "postal_code" ] } ], "types": [ "establishment", "point_of_interest" ] }
پارامترهای مورد نیاز
-
place
- شناسه مکان مکانی که می خواهید آدرس قابل خواندن توسط انسان را برای آن به دست آورید. شناسه مکان یک شناسه منحصر به فرد است که می تواند با سایر API های Google استفاده شود. برای مثال، میتوانید ازplaceID
بازگردانده شده توسط Roads API برای دریافت آدرس یک نقطه شکسته استفاده کنید. برای اطلاعات بیشتر درباره شناسه مکان، شناسه مکان را ببینید.
پارامترهای اختیاری
کد زبان
زبانی که در آن نتایج را برگرداند.
- لیست زبان های پشتیبانی شده را ببینید. Google اغلب زبان های پشتیبانی شده را به روز می کند، بنابراین این فهرست ممکن است جامع نباشد.
- اگر
languageCode
ارائه نشده باشد، API پیشفرضen
را انتخاب میکند. اگر کد زبان نامعتبر را مشخص کنید، API یک خطایINVALID_ARGUMENT
را برمیگرداند. - API تمام تلاش خود را می کند تا آدرس خیابانی را ارائه دهد که هم برای کاربر و هم برای افراد محلی قابل خواندن باشد. برای دستیابی به این هدف، آدرسهای خیابان را به زبان محلی برمیگرداند و به اسکریپتی که در صورت لزوم توسط کاربر قابل خواندن است، با رعایت زبان ترجیحی، ترجمه میشود. همه آدرس های دیگر به زبان ترجیحی برگردانده می شوند. اجزای آدرس همه به یک زبان بازگردانده می شوند که از جزء اول انتخاب شده است.
- اگر نامی در زبان ترجیحی موجود نباشد، API از نزدیکترین تطابق استفاده می کند.
- زبان ترجیحی تأثیر کمی بر مجموعه نتایجی که API برای برگرداندن آنها انتخاب میکند و ترتیب بازگرداندن آنها دارد. geocoder بسته به زبان، اختصارات را متفاوت تفسیر می کند، مانند اختصارات انواع خیابان، یا مترادف هایی که ممکن است در یک زبان معتبر باشند اما در زبان دیگر معتبر نیستند.
منطقه کد
کد منطقه به عنوان یک مقدار کد CLDR دو کاراکتری . هیچ مقدار پیش فرض وجود ندارد. اکثر کدهای CLDR با کدهای ISO 3166-1 یکسان هستند.
هنگام کدگذاری جغرافیایی یک آدرس، کدگذاری جغرافیایی فوروارد ، این پارامتر می تواند بر نتایج سرویس به منطقه مشخص شده تأثیر بگذارد، اما به طور کامل محدود نمی شود. هنگام کدگذاری جغرافیایی یک مکان یا مکان، رمزگذاری جغرافیایی معکوس یا کدگذاری جغرافیایی مکان ، می توان از این پارامتر برای قالب بندی آدرس استفاده کرد. در همه موارد، این پارامتر می تواند بر نتایج بر اساس قانون قابل اجرا تأثیر بگذارد.