ใช้โทเค็นเซสชันกับ Map Tiles API

นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

โทเค็นเซสชันคือข้อมูล (UUID) ที่ใช้ในการเรียก REST เพื่อระบุเซสชัน ซึ่งเป็นชุดการแลกเปลี่ยนข้อความที่เกี่ยวข้อง คุณต้องใส่โทเค็นของเซสชันในคำขอทั้งหมดสำหรับไทล์ 2 มิติและภาพ Street View คุณจะรวมเป็นค่าของพารามิเตอร์ session ที่ต่อท้าย URL คำขอทั้งหมด

ใน Map Tiles API โทเค็นของเซสชันแสดงถึงชุดตัวเลือกการแสดงผลที่กำหนดไว้ ซึ่งหมายความว่าคุณไม่จำเป็นต้องส่งชุดตัวเลือกการแสดงผลพร้อมกับคำขอไทล์แต่ละรายการ คุณใช้โทเค็นเซสชันเดียวกันในไคลเอ็นต์หลายรายได้ ปัจจุบันโทเค็นของเซสชันมีอายุ 2 สัปดาห์นับจากเวลาที่ออก แต่อาจมีการเปลี่ยนแปลง คุณตรวจสอบเวลาหมดอายุของโทเค็นของเซสชันได้ทุกเมื่อโดยดูฟิลด์ expiry ในข้อความตอบกลับ

คำขอโทเค็นของเซสชัน

หากต้องการขอโทเค็นของเซสชัน ให้ส่งคำขอ HTTPS POST ไปยังปลายทาง createSession ดังที่แสดงในตัวอย่างต่อไปนี้ คุณต้องส่งคำขอพร้อมส่วนหัว Content-Type: application/json

curl -X POST -d '{
  "mapType": "streetview",
  "language": "en-US",
  "region": "US"
}' \
-H 'Content-Type: application/json' \
"https://tile.googleapis.com/v1/createSession?key=YOUR_API_KEY"

ฟิลด์ที่จำเป็น

mapType

ประเภทแผนที่ฐาน ค่านี้อาจเป็นค่าใดค่าหนึ่งต่อไปนี้

roadmap
ชิ้นส่วนแผนที่ที่วาดของ Google Maps มาตรฐาน
satellite
ภาพถ่ายจากดาวเทียม
terrain
ภาพภูมิประเทศ เมื่อเลือก terrain เป็นประเภทแผนที่ คุณต้องระบุ ประเภทเลเยอร์ layerRoadmap ด้วย (อธิบายไว้ในส่วน ฟิลด์ที่ไม่บังคับ )
streetview
ภาพพาโนรามาของ Street View ดูข้อมูลเพิ่มเติมได้ที่ ไทล์ Street View
language

แท็กภาษา IETF ที่ระบุภาษาที่ใช้แสดงข้อมูลในไทล์ เช่น en-US ระบุภาษาอังกฤษตามที่พูดในสหรัฐอเมริกา

region

ตัวระบุภูมิภาคของ ที่เก็บข้อมูลภาษาทั่วไป (ตัวอักษรพิมพ์ใหญ่ 2 ตัว) ซึ่งแสดงถึงตำแหน่งจริง ของผู้ใช้ เช่น US

ช่องที่ไม่บังคับ

imageFormat
ระบุรูปแบบไฟล์ที่จะแสดง ค่าที่ใช้ได้คือ jpeg หรือ png ไฟล์ JPEG ไม่รองรับความโปร่งใส จึงไม่แนะนำให้ใช้กับไทล์ซ้อนทับ หากคุณไม่ระบุ imageFormat ระบบจะเลือกรูปแบบที่ดีที่สุดสำหรับ ไทล์โดยอัตโนมัติ
scale

ขยายขนาดองค์ประกอบของแผนที่ (เช่น ป้ายกำกับถนน) ขณะที่ยังคงขนาดไทล์และพื้นที่ขอบเขตการทำข่าวของไทล์เริ่มต้นไว้ การเพิ่มระดับยังช่วย ลดจำนวนป้ายกำกับบนแผนที่ ซึ่งจะช่วยลดความรก ค่าต่อไปนี้เป็นค่า scale ที่ใช้ได้

  • scaleFactor1x: ค่าเริ่มต้น
  • scaleFactor2x: เพิ่มขนาดป้ายกำกับเป็น 2 เท่าและนำป้ายกำกับฟีเจอร์เล็กๆ น้อยๆ ออก
  • scaleFactor4x: เพิ่มขนาดป้ายกำกับเป็น 4 เท่าและนำป้ายกำกับฟีเจอร์เล็กๆ น้อยๆ ออก

ตัวอย่างต่อไปนี้แสดงให้เห็นผลของการปรับขนาดองค์ประกอบของแผนที่

ค่าตัวคูณมาตราส่วน 1x ค่าตัวคูณมาตราส่วน 2 เท่า
แผนที่แสดงค่าตัวคูณมาตราส่วน 1x แผนที่แสดงค่าตัวคูณมาตราส่วน 2x
highDpi
ระบุว่าจะแสดงผลไทล์ความละเอียดสูงหรือไม่ หากเพิ่มปัจจัยการปรับขนาด ระบบจะใช้ highDpi เพื่อเพิ่มขนาดของไทล์ โดยปกติแล้ว การเพิ่มปัจจัยการปรับขนาดจะขยายไทล์ที่ได้ให้เป็นรูปภาพที่มีขนาดเท่ากัน ซึ่งจะทำให้คุณภาพลดลง เมื่อใช้ highDpi ขนาดที่ได้จะเพิ่มขึ้นด้วย เพื่อรักษาคุณภาพ DPI ย่อมาจาก Dots per Inch และ High DPI หมายความว่า ไทล์จะแสดงผลโดยใช้จุดต่อนิ้วมากกว่าปกติ หาก true จำนวนพิกเซลในมิติข้อมูล x และ y แต่ละมิติจะคูณด้วยปัจจัย การปรับขนาด (เช่น 2x หรือ 4x) พื้นที่ครอบคลุมของไทล์จะไม่มีการเปลี่ยนแปลง พารามิเตอร์นี้ใช้ได้กับscaleที่มีค่า 2x หรือ 4x เท่านั้น โดยจะไม่มีผลต่อไทล์ขนาด 1 เท่า
ค่าตัวคูณมาตราส่วน 1x ค่าตัวคูณมาตราส่วน 2x DPI สูง
แผนที่แสดงที่ความละเอียดปกติ แผนที่แสดงที่ความละเอียด High DPI 2 เท่า
layerTypes

อาร์เรย์ของค่าที่ระบุประเภทเลเยอร์ที่เพิ่มลงในแผนที่ ค่าที่ใช้ได้มีดังนี้

layerRoadmap
ต้องระบุหากคุณระบุ terrain เป็นประเภทแผนที่ นอกจากนี้ ยังสามารถซ้อนทับกับsatelliteประเภทแผนที่ได้ด้วย (ไม่บังคับ) ไม่มีผลต่อไทล์แผนงาน
layerStreetview
แสดงถนนและสถานที่ที่เปิดใช้ Street View โดยใช้เส้นขอบสีน้ำเงินบน แผนที่
layerTraffic
แสดงสภาพการจราจรปัจจุบัน
styles

อาร์เรย์ของออบเจ็กต์รูปแบบ JSON ที่ระบุลักษณะและระดับรายละเอียดของ องค์ประกอบในแผนที่ เช่น ถนน สวนสาธารณะ และพื้นที่ที่มีสิ่งปลูกสร้าง การจัดรูปแบบใช้เพื่อ ปรับแต่งแผนที่ฐานมาตรฐานของ Google พารามิเตอร์ styles จะใช้ได้ก็ต่อเมื่อ ประเภทแผนที่เป็น roadmap ดูไวยากรณ์ของรูปแบบทั้งหมดได้ที่ ข้อมูลอ้างอิงเกี่ยวกับรูปแบบ

overlay

ค่าบูลีนที่ระบุว่าควรแสดง layerTypes เป็นภาพซ้อนทับแยกต่างหากหรือรวมกับภาพฐาน เมื่อ true แผนที่ฐานจะไม่แสดง หากคุณไม่ได้กำหนด layerTypes, ระบบจะไม่สนใจค่านี้

เช่น การขอsatelliteประเภทแผนที่ที่มีเลเยอร์ layerRoadmap และ overlayตั้งค่าเป็น false จะทำให้ได้ไทล์ที่เทียบเท่ากับhybridประเภทแผนที่ ที่ใช้ใน Maps JavaScript API (รูปภาพด้านซ้าย) แผนที่และเลเยอร์ประเภทเดียวกันที่ตั้งค่า overlay เป็น true จะทำให้ได้ไทล์โปร่งใส พร้อมการแสดงข้อมูลบนแผนที่ ซึ่งจัดรูปแบบอย่างเหมาะสมสำหรับการวางซ้อนบนภาพถ่ายจากดาวเทียม (รูปภาพด้านขวา)

overlay: false overlay: จริง
ตั้งค่าการซ้อนทับเป็น "เท็จ" ตั้งค่าการซ้อนทับเป็น "จริง"

JSON ต่อไปนี้เป็นตัวอย่างเนื้อความของคำขอทั่วไปที่มีทั้ง ฟิลด์ที่ต้องระบุและฟิลด์ที่ไม่บังคับ

{
  "mapType": "satellite",
  "language": "en-US",
  "region": "us",
  "layerTypes": [ "layerRoadmap", "layerStreetview" ],
  "overlay":  true,
  "scale": "scaleFactor1x",
  "styles": [
    {
      "stylers": [
        { "hue": "#00ffe6" },
        { "saturation": -20 }
      ]
    },{
      "featureType": "road",
      "elementType": "geometry",
      "stylers": [
        { "lightness": 100 },
        { "visibility": "simplified" }
      ]
    }
  ]
}

ตัวอย่างนี้แสดงภาพซ้อนทับที่เหมาะสำหรับการรวมกับภาพจากดาวเทียม ตัวอย่างนี้มีทั้งแผนที่เส้นทางและการวางซ้อนสตรีทวิว แผนที่ที่ได้จะแสดงชื่อและข้อมูลเป็นภาษาอังกฤษ เนื่องจากเป็นภาษาที่ใช้ในสหรัฐอเมริกา

การตอบกลับของโทเค็นของเซสชัน

JSON ต่อไปนี้เป็นตัวอย่างเนื้อหาการตอบกลับ

{
  "session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
  "expiry": "1361828036",
  "tileWidth": 256,
  "tileHeight": 256,
  "imageFormat": "png"
}

รายการต่อไปนี้มีคำจำกัดความของฟิลด์ในเนื้อหาการตอบกลับ

session
ค่าโทเค็นของเซสชันที่คุณต้องรวมไว้ในคำขอ Map Tiles API ทั้งหมด
expiry
สตริงที่มีเวลา (เป็นวินาทีตั้งแต่ Epoch) ที่โทเค็นหมดอายุ โทเค็นของเซสชันจะมีอายุ 2 สัปดาห์นับจากเวลาที่สร้างขึ้น แต่นโยบายนี้อาจเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบ
tileWidth
ความกว้างของไทล์ที่วัดเป็นพิกเซล
tileHeight
ความสูงของไทล์ในหน่วยพิกเซล
imageFormat
รูปแบบรูปภาพ ซึ่งอาจเป็น png หรือ jpeg