Sử dụng mã thông báo phiên với API Thẻ thông tin bản đồ

Mã thông báo phiên là một phần dữ liệu (thông tin UUID) được dùng trong các lệnh gọi REST để xác định phiên—một một loạt các trao đổi tin nhắn liên quan. Bạn phải bao gồm mã thông báo phiên trong tất cả yêu cầu về Thẻ thông tin 2D và hình ảnh trong Chế độ xem phố. Bạn thêm tham số này dưới dạng giá trị của thông số session được thêm vào tất cả yêu cầu URL.

Trong API Thẻ thông tin của bản đồ, mã thông báo phiên đại diện cho một tập hợp tùy chọn hiển thị. Điều đó có nghĩa là bạn không phải chuyển một tập hợp các tuỳ chọn hiển thị bằng từng yêu cầu thẻ thông tin. Bạn có thể sử dụng cùng một mã thông báo phiên trên nhiều ứng dụng. Mã thông báo phiên hiện có hiệu lực trong hai tuần kể từ khi thời điểm phát hành, nhưng điều này có thể thay đổi. Bạn luôn có thể kiểm tra thời gian hết hạn của mã phiên hoạt động bằng cách xem trường expiry trong thông báo phản hồi.

Yêu cầu mã thông báo phiên

Để yêu cầu mã thông báo phiên, hãy gửi yêu cầu POST qua HTTPS đến createSession như trong ví dụ sau. Bạn phải gửi yêu cầu bằng Tiêu đề 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"

Các trường bắt buộc

mapType

Loại bản đồ cơ sở. Giá trị này có thể là một trong những giá trị sau:

roadmap
Các ô bản đồ có màu sắc tiêu chuẩn của Google Maps.
satellite
Hình ảnh vệ tinh.
terrain
Hình ảnh địa hình. Khi chọn terrain làm loại bản đồ, bạn cũng phải bao gồm loại lớp layerRoadmap (được mô tả trong Trường không bắt buộc ).
streetview
Ảnh toàn cảnh trong Chế độ xem đường phố. Để biết thêm thông tin, hãy xem Thẻ thông tin trong Chế độ xem đường phố.
language

Một Thẻ ngôn ngữ IETF chỉ định ngôn ngữ dùng để hiển thị thông tin trên thẻ thông tin. Cho ví dụ: en-US chỉ định ngôn ngữ tiếng Anh như được nói ở Hoa Kỳ.

region

Đáp Kho lưu trữ dữ liệu ngôn ngữ phổ biến mã nhận dạng khu vực (hai chữ cái viết hoa) thể hiện vị trí thực tế của người dùng. Ví dụ: US.

Trường tùy chọn (trường không bắt buộc)

imageFormat
Chỉ định định dạng tệp cần trả về. Các giá trị hợp lệ là jpeg hoặc png. Tệp JPEG không hỗ trợ độ trong suốt nên không nên dùng cho ô lớp phủ. Nếu bạn không chỉ định imageFormat, thì định dạng tốt nhất cho thẻ thông tin sẽ được chọn tự động.
scale

Tăng kích thước của các thành phần bản đồ (như nhãn đường), trong khi vẫn giữ lại kích thước ô và vùng bao phủ của thẻ thông tin mặc định. Việc tăng quy mô cũng sẽ giảm số lượng nhãn trên bản đồ, điều này giúp giảm sự lộn xộn. Nội dung sau đây các giá trị là các giá trị scale hợp lệ:

  • scaleFactor1x: Giá trị mặc định.
  • scaleFactor2x: Tăng gấp đôi kích thước nhãn và xoá các nhãn của tính năng phụ.
  • scaleFactor4x: Tăng gấp đôi kích thước nhãn và xoá các nhãn tính năng nhỏ.

Các ví dụ sau đây minh hoạ tác động của việc chia tỷ lệ các phần tử bản đồ.

Hệ số tỷ lệ 1x Hệ số tỷ lệ 2x
Bản đồ hiển thị hệ số tỷ lệ 1x Bản đồ hiển thị hệ số tỷ lệ 2x
highDpi
Chỉ định xem có trả về thẻ thông tin có độ phân giải cao hay không. Nếu hệ số tỷ lệ là highDpi sẽ được dùng để tăng kích thước của thẻ thông tin. Thông thường, khi tăng hệ số tỷ lệ, ô thu được sẽ phóng to thành hình ảnh cùng kích thước, làm giảm chất lượng. Với highDpi, kích thước thu được cũng là tăng, duy trì chất lượng. DPI là viết tắt của Dots per Inch (Dấu chấm trên mỗi Inch), High DPI có nghĩa là ô hiển thị sử dụng nhiều điểm hơn trên mỗi inch so với bình thường. Nếu là true, thì hàm số pixel trong mỗi kích thước x và y được nhân với tỷ lệ (tức là 2x hoặc 4x). Phạm vi bao phủ của thẻ thông tin vẫn không thay đổi. Tham số này chỉ hoạt động với các giá trị scale là 2x hoặc 4x. Không ảnh hưởng đến Ô tỷ lệ 1x.
Hệ số tỷ lệ 1x Hệ số tỷ lệ 2x DPI cao
Bản đồ được hiển thị ở độ phân giải bình thường Bản đồ hiển thị ở độ phân giải DPI cao gấp 2 lần
layerTypes

Một mảng giá trị chỉ định loại lớp được thêm vào bản đồ. Hợp lệ là:

layerRoadmap
Bắt buộc nếu bạn chỉ định terrain làm loại bản đồ. Cũng có thể là (không bắt buộc) phủ lên loại bản đồ satellite. Không ảnh hưởng đến các ô lộ trình.
layerStreetview
Hiển thị các vị trí và đường phố được bật Chế độ xem đường phố bằng cách sử dụng đường viền màu xanh dương trên bản đồ.
layerTraffic
Hiển thị tình trạng giao thông hiện tại.
styles

Một mảng các đối tượng kiểu JSON chỉ định giao diện và cấp độ chi tiết của các đối tượng trên bản đồ như đường phố, công viên và khu vực đã xây dựng. Kiểu được dùng để tuỳ chỉnh bản đồ cơ sở tiêu chuẩn của Google. Tham số styles chỉ hợp lệ nếu loại bản đồ là roadmap. Để biết cú pháp kiểu đầy đủ, hãy xem Tham chiếu kiểu.

overlay

Giá trị boolean chỉ định liệu layerTypes có phải là hiển thị dưới dạng một lớp phủ riêng biệt hoặc được kết hợp với hình ảnh gốc. Thời gian true, bản đồ cơ sở không được hiển thị. Nếu bạn chưa xác định layerTypes nào, thì giá trị này sẽ bị bỏ qua.

Ví dụ: yêu cầu loại bản đồ satellite có một lớp layerRoadmapoverlay được đặt thành false sẽ dẫn đến ô tương đương với loại bản đồ hybrid được sử dụng trong API JavaScript của Maps (hình ảnh bên trái). Điều tương tự các loại bản đồ và lớp với overlay được đặt thành true sẽ dẫn đến ô trong suốt có lớp phủ bản đồ, được tạo kiểu phù hợp để phủ lên hình ảnh vệ tinh (hình ảnh bên phải).

overlay: sai overlay: đúng
Đã đặt lớp phủ thành false Đặt lớp phủ thành true

JSON sau đây là ví dụ về nội dung yêu cầu điển hình chứa cả các trường bắt buộc và không bắt buộc.

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

Ví dụ này cung cấp một lớp phủ phù hợp để kết hợp với vệ tinh hình ảnh. Ví dụ này chứa cả lộ trình và lớp phủ Chế độ xem đường phố. Chiến lược phát hành đĩa đơn bản đồ thu được được kết xuất với tên và dữ liệu bằng tiếng Anh, giống như được phát biểu tại Hoa Kỳ.

apiOptions: Một mảng giá trị chỉ định các tuỳ chọn bổ sung cần áp dụng. Các tuỳ chọn được hỗ trợ là:

  • MCYJ5E517XR2JC – Chọn tham gia bản đồ mới phong cách. Trong thời gian chọn tham gia, yêu cầu của bạn sẽ nhận được kiểu trừ khi giá trị này được chỉ định.

Phản hồi mã thông báo phiên

JSON sau đây là một nội dung phản hồi mẫu.

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

Danh sách sau đây chứa định nghĩa của các trường trong nội dung phản hồi.

session
Giá trị mã thông báo phiên mà bạn phải đưa vào tất cả API Thẻ thông tin của bản đồ yêu cầu.
expiry
Một chuỗi chứa thời gian (tính bằng giây kể từ thời gian bắt đầu của hệ thống) mà mã thông báo hết hạn. Mã thông báo phiên có hiệu lực trong hai tuần kể từ khi tạo nhưng chính sách này có thể thay đổi mà không có thông báo.
tileWidth
Chiều rộng của ô được đo bằng pixel.
tileHeight
Chiều cao của thẻ thông tin được đo bằng pixel.
imageFormat
Định dạng hình ảnh, có thể là png hoặc jpeg.