کاشیها و TileJSON
نشانی کاشیهای برداری، TileJSON، سنجاق کردن نسخه داده، سرآیندهای کش، برچسب فارسی و انتساب.
نشانی کاشی
| مسیر | کلید | سرویس | توضیح |
|---|---|---|---|
GET /v1/tiles/{tileset}/{z}/{x}/{y}.pbf | لازم | maps.tiles | کاشی برداری؛ ۲۰۴ برای کاشی خالی؛ ?v= نسخه داده را سنجاق میکند. |
GET /v1/tiles/{tileset}.json | لازم | maps.style | TileJSON 3.0.0 با ?lang=fa|en|fa-en. |
GET /v1/styles/{styleId}.json | لازم | maps.style | سند سبک MapLibre نسخه ۸ با ?lang و ?tileset. |
GET /v1/fonts/{fontstack}/{start}-{end}.pbf | ندارد | رایگان | فونتهای برچسب (وزیرمتن). |
GET /v1/sprites/namayek{@2x}.{json,png} | ندارد | رایگان | آیکنهای نقشه. |
GET /v1/rtl/mapbox-gl-rtl-text.js | ندارد | رایگان | افزونه شکلدهی فارسی برای MapLibre 5. |
GET /sdk/v1/{version}/{file} | ندارد | رایگان | کیت توسعه و MapLibre با کش یکساله. |
GET /v1/status | ندارد | رایگان | وضعیت عمومی سرویسها (ok، degraded، preparing، disabled). |
z، x و y عدد صحیح لاتین بی صفر پیشرو هستند؛ کاشی بیرون از بازه زوم مجموعه TILE_OUT_OF_RANGE میدهد. معمولا لازم نیست این نشانیها را خودتان بسازید: سند سبک همه را دارد.
TileJSON
TileJSON 3.0.0 مشخصات مجموعه را میدهد: نشانی کاشیها، بازه زوم، محدوده، مرکز، لایههای برداری و بلوک namayek با نسخه داده، تاریخ داده OpenStreetMap، طرح داده و زبانها.
curl -sS "https://maps.namayek.com/v1/tiles/iran.json?lang=fa" \ -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY"curl -sS "https://maps.namayek.com/v1/tiles/iran/12/2633/1610.pbf" \ -H "X-Namayek-Key: $NAMAYEK_SECRET_KEY" \ -o tile.pbfسنجاق کردن نسخه داده
نشانی کاشیها در سند سبک ?v= نسخه داده را دارد؛ هنگام بهروزرسانی داده، سند سبک تازه نسخه تازه را اعلام میکند و کاشیهای قدیمی تا پایان کار باز میمانند تا نقشه وسط استفاده به هم نریزد. نسخه ناشناخته به نسخه جاری میرود.
کش
| پاسخ | نوع / مقدار | توضیح |
|---|---|---|
کاشی ۲۰۰، ۲۰۴، ۳۰۴ | private, max-age=86400 | همراه stale-while-revalidate و ETag؛ چون کلید دارد، هرگز در کش مشترک. |
سبک و TileJSON | private, max-age=300 | ETag ضعیف؛ با If-None-Match پاسخ ۳۰۴ میگیرید. |
فونت و آیکن با ?v= | public, max-age=31536000, immutable | بی کلید و قابل کش مشترک. |
کیت توسعه نسخهدار | public, max-age=31536000, immutable | نشانی بی نسخه یک ساعت کش میشود. |
پاسخ سرویسها | private, max-age=60…3600 | مسیر و ماتریس no-store؛ سرآیند X-Namayek-Cache از hit یا miss میگوید. |
هر خطا | no-store | خطاها هرگز کش نمیشوند. |
برچسب فارسی
برچسبها با ?lang=fa فارسی، با en انگلیسی و با fa-en هر دو هستند. MapLibre 5 برای شکل درست حروف فارسی افزونه راستبهچپ میخواهد؛ کیت توسعه خودش آن را بارگذاری میکند و بی کیت اینطور:
import maplibregl from "maplibre-gl"; const map = new maplibregl.Map({ container: "map", style: "https://maps.namayek.com/v1/styles/namayek-light.json?lang=fa&key=nmk_pk_YOUR_PUBLISHABLE_KEY", center: [51.389, 35.6892], zoom: 12,});// برچسب فارسی در MapLibre 5:maplibregl.setRTLTextPlugin("https://maps.namayek.com/v1/rtl/mapbox-gl-rtl-text.js", true);انتساب
- نمایش انتساب داده روی نقشه الزامی است؛ کیت توسعه آن را همیشه نشان میدهد و فقط فشرده بودنش قابل تغییر است.
- متن دقیق در داده و انتساب.
آخرین بهروزرسانی: