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

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

โทเค็นของเซสชันคือข้อมูล (UUID) ที่ใช้ในการเรียก REST เพื่อระบุเซสชัน ซึ่งก็คือชุดการแลกเปลี่ยนข้อความที่เกี่ยวข้อง คุณต้องใส่โทเค็นของเซสชันในคำขอทั้งหมดสำหรับภาพ 2D Tiles และ 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

ตัวระบุภูมิภาค Common Locale Data Repository (ตัวพิมพ์ใหญ่ 2 ตัว) ที่แสดงตำแหน่งจริงของผู้ใช้ เช่น US

ฟิลด์ตัวเลือก

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

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

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

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

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

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" }
      ]
    }
  ]
}

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

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

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