سوالات متداول مربوط به ژئوکدینگ

این سؤالات متداول سؤالات مختص به API Geocoding را پوشش می دهد. لطفاً برای سؤالات رایج در همه پلتفرم نقشه‌های Google به سؤالات متداول پلتفرم Google Maps مراجعه کنید. همچنین به بهترین روش‌ها هنگام کدگذاری آدرس‌ها مراجعه کنید.

عیب یابی

عیب یابی

من درخواست های بیشتری دریافت می کنم که ZERO_RESULTS را با geocoder برمی گرداند. چه خبر است؟

در geocoder، پرس و جوهای مبهم، ناقص و با قالب بندی بد، مانند آدرس های غلط املایی یا عدم وجود، مستعد تولید ZERO_RESULTS هستند. اگر آدرس پیدا نشد، ZERO_RESULTS به یک نتیجه جزئی ترجیح داده می شود (به عنوان مثال، به جای آدرس، فقط حومه شهر را برگردانید).

اگر برنامه شما با ورودی آدرس ها توسط کاربر سروکار دارد، ویژگی تکمیل خودکار مکان در Places API ممکن است نتایج با کیفیت بهتری ایجاد کند. تکمیل خودکار مکان به کاربران امکان می‌دهد از میان مجموعه‌ای از نتایج بر اساس آنچه تایپ کرده‌اند، انتخاب کنند، که به کاربران امکان می‌دهد از بین نتایج با نام مشابه یکی را انتخاب کنند و در صورت املای اشتباه آدرس، درخواست خود را تنظیم کنند.

اگر برنامه‌ای دارید که با جستارهای مبهم یا ناقص یا جستارهایی که ممکن است حاوی خطا باشند سروکار دارد، توصیه می‌کنیم از ویژگی تکمیل خودکار مکان در Places API به جای ژئوکدگذار فوروارد موجود در Geocoding API استفاده کنید. برای جزئیات بیشتر، به بهترین روش‌ها هنگام کدگذاری آدرس‌ها و کدگذاری جغرافیایی آدرس در پست وبلاگ Google Maps APIs مراجعه کنید.

من به پاسخ های سریع نیاز دارم و geocoder برای برنامه من بسیار کند است. برای پاسخگویی سریعتر از چه چیزی می توانم استفاده کنم؟

توصیه می‌کنیم برنامه‌هایی که به ورودی کاربر پاسخ می‌دهند، و بنابراین به تأخیر بسیار حساس هستند، از ویژگی تکمیل خودکار مکان در Places API (همچنین در جاوا اسکریپت ، اندروید ، یا iOS موجود است) به‌جای کدگذاری جغرافیایی آدرس استفاده کنند. تکمیل خودکار مکان برای استفاده تعاملی بهینه شده است و بنابراین تأخیر بسیار کمی دارد.

کدگذاری جغرافیایی آدرس در Geocoding API برای استفاده با آدرس‌های کامل، بدون ابهام و قالب‌بندی مناسب، مانند آدرس‌های تحویل وارد شده در فرم‌های آنلاین، بهینه‌سازی شده است و بنابراین تأخیر بیشتری نسبت به تکمیل خودکار مکان دارد. ژئوکدر فوروارد دارای پوشش بیشتر و کیفیت نتیجه بهتر است، اما با تأخیر کمی بالاتر.

چگونه می توانم تاخیر در Directions API و Distance Matrix API را کاهش دهم؟

به جای آدرس‌ها، از شناسه‌های مکان برای تعیین ایستگاه‌های بین راه، مبدا و مقصد استفاده کنید. شناسه‌های مکان بهتر است از ویژگی تکمیل خودکار مکان در Places API یا کتابخانه مکان‌ها در Maps JavaScript API به دست آیند. همچنین به اطلاعات مربوط به گزینه placeIdOnly مراجعه کنید، که می تواند برای کاهش هزینه تکمیل خودکار مکان استفاده شود.

هنگامی که Directions API یا Distance Matrix API با یک رشته آدرس به جای شناسه مکان یا latlng مورد پرسش قرار می گیرد، از همان Backend API Geocoding برای تبدیل آن آدرس به شناسه مکان قبل از محاسبه جهت ها استفاده می کنند. تکمیل خودکار مکان سریعتر از کدگذاری جغرافیایی آدرس است. برای برنامه‌هایی که از Directions API یا Distance Matrix API در موقعیت‌های بسیار حساس به تأخیر استفاده می‌کنند، مانند پاسخ دادن به ورودی کاربر، توصیه می‌کنیم از تکمیل خودکار مکان برای دریافت شناسه‌های مکان مربوط به آن آدرس‌ها استفاده کنید و شناسه‌های مکان را به API Directions منتقل کنید. یا Distance Matrix API. این رویکرد تأخیر را به طور قابل توجهی کاهش می دهد. برای مثالی از نحوه استفاده از تکمیل خودکار مکان با دستورالعمل‌ها، به مستندات ما مراجعه کنید.

چگونه اشکالات را در geocoder گزارش کنم؟

اگر هرگونه گزارش اشکال یا درخواست ویژگی برای سرویس geocoder فوروارد دارید، لطفاً با استفاده از ردیاب مسائل عمومی به ما اطلاع دهید.

geocoder نتایج خوبی برای مورد استفاده من ایجاد نمی کند. چه کمکی در دسترس است؟

لطفاً با استفاده از ردیاب مسائل عمومی ما، با به اشتراک گذاشتن چند سؤال خاص، به ما اطلاع دهید تا بررسی کنیم که آیا اشکال یا مشکلات سیستمی وجود دارد که باعث ایجاد مشکل در کیفیت نتیجه می شود، یا آیا تغییراتی وجود دارد که می توانیم در راهنمای بهترین شیوه ها ایجاد کنیم. برای کمک به توسعه دهندگان برای دریافت نتایج بهتر.

چگونه می توانم بهترین نتایج را با geocoder با استفاده از فیلتر کامپوننت بگیرم؟

در geocoder، فیلتر مؤلفه فقط محدودیت‌های postal_code و country را اعمال می‌کند. نمونه‌های زیر نحوه بهترین استفاده از فیلترینگ مؤلفه را، بسته به نتایج مورد نیاز، نشان می‌دهند. در نشانی‌های اینترنتی درخواست نمونه، حتماً «YOUR_API_KEY» را با کلید API واقعی خود جایگزین کنید.

  • برای محدود کردن کدهای پستی به یک کشور خاص، حتماً محدودیت کشور را با استفاده از کد کشور ISO 3166-2 مشخص کنید. برای مثال: components=country:CH|postal_code:8000 «8000 Zürich, Switzerland» را برمی‌گرداند.
    https://maps.googleapis.com/maps/api/geocode/json?components=country:CH%7Cpostal_code:8000&key=YOUR_API_KEY
  • برای محدود کردن درخواست‌ها به یک کشور خاص، حتماً محدودیت کشور را با استفاده از کد کشور ISO 3166-2 مشخص کنید. نام کشورها و سایر اختصارات تضمینی برای ایجاد نتایج مشابه با کد کشورها نیستند.

    مثال ها:

    • ژئوکدینگ برای components=country:FRA|locality:gallus محل فرعی Gallus در فرانکفورت آم ماین، آلمان را برمی‌گرداند. این به این دلیل است که کد کشور 3 حرفی برای فرانسه (FRA) پشتیبانی نمی‌شود، بنابراین نتایج در هر کشوری مجاز است و نتیجه در فرانکفورت بهتر از هر چیزی در فرانسه است.
      https://maps.googleapis.com/maps/api/geocode/json?components=country:FRA%7Clocality:gallus&key=YOUR_API_KEY
  • Geocoding API لزوماً چندین نتیجه را برای پرس و جوهای مبهم نشان نمی دهد. چنین پرسش‌هایی با تکمیل خودکار مکان بهتر پاسخ داده می‌شوند.

    مثال ها:

    • Geocoding برای components=country:US|locality:madrid "Madrid, NM 87010, USA" را برمی گرداند اما هیچ یک از شهرهای دیگر ایالات متحده به نام "Madrid" نیستند.
      https://maps.googleapis.com/maps/api/geocode/json?components=country:US%7Clocality:madrid&key=YOUR_API_KEY
    • استفاده از Place Autocomplete برای input=madrid&components=country:us&types=(regions) و همچنین مشخص کردن یک نمای با استفاده از location و radius برای سوگیری نتایج مکان ، پاسخی را با چندین شهر در ایالات متحده به نام "Madrid" ایجاد می کند.
      https://maps.googleapis.com/maps/api/place/autocomplete/json?location=37.386052,-122.083851&radius=10000&input=madrid&components=country:us&types=(regions)&key=YOUR_API_KEY