Google Maps Platform Static Web API là một tập hợp các giao diện HTTP cho các dịch vụ của Google. Các giao diện này tạo ra những hình ảnh mà bạn có thể nhúng trực tiếp vào trang web của mình.
Hướng dẫn này mô tả một số phương pháp phổ biến mà bạn có thể thực hiện để thiết lập yêu cầu về hình ảnh và xử lý các phản hồi của dịch vụ. Để biết thêm thông tin về Maps Static API, hãy xem hướng dẫn dành cho nhà phát triển.
API web tĩnh là gì?
Các API web tĩnh của Nền tảng Google Maps cho phép bạn nhúng một hình ảnh Google Maps vào trang web của mình mà không cần JavaScript hoặc bất kỳ hoạt động tải trang động nào. Các API web tĩnh tạo ra một hình ảnh dựa trên các tham số URL được gửi bằng yêu cầu HTTPS tiêu chuẩn.
Một yêu cầu Maps Static API thông thường có dạng như sau:
https://www.googleapis.com/staticmap/z/x/y?parameters
Lưu ý: Tất cả các ứng dụng Maps Static API đều yêu cầu xác thực. Để biết thêm thông tin, hãy xem thông tin xác thực.
Quyền truy cập TLS
Bạn phải sử dụng HTTPS cho tất cả các yêu cầu của Google Maps Platform sử dụng khoá API hoặc chứa dữ liệu người dùng. Các yêu cầu được thực hiện qua HTTP có chứa dữ liệu nhạy cảm có thể bị từ chối.
Tạo URL hợp lệ
Bạn có thể nghĩ rằng một URL "hợp lệ" là điều hiển nhiên, nhưng không hẳn như vậy. Ví dụ: URL được nhập vào thanh địa chỉ trong một trình duyệt có thể chứa các ký tự đặc biệt (ví dụ: "上海+中國"); trình duyệt cần dịch nội bộ những ký tự đó thành một phương thức mã hoá khác trước khi truyền.
Tương tự, mọi mã tạo hoặc chấp nhận dữ liệu đầu vào UTF-8 đều có thể coi URL có ký tự UTF-8 là "hợp lệ", nhưng cũng cần dịch các ký tự đó trước khi gửi đến một máy chủ web.
Quá trình này được gọi là
mã hoá URL hoặc mã hoá bằng dấu phần trăm.
Các ký tự đặc biệt
Chúng ta cần dịch các ký tự đặc biệt vì tất cả URL đều phải tuân thủ cú pháp do quy cách Giá trị nhận dạng tài nguyên thống nhất (URI) chỉ định. Trên thực tế, điều này có nghĩa là URL chỉ được chứa một tập hợp con đặc biệt của các ký tự ASCII: các ký hiệu chữ và số quen thuộc và một số ký tự dành riêng để sử dụng làm ký tự điều khiển trong URL. Bảng này tóm tắt các ký tự này:
| Đặt | ký tự | Cách sử dụng URL |
|---|---|---|
| Chữ và số | a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 | Chuỗi văn bản, cách sử dụng lược đồ (http), cổng (8080), v.v. |
| Không dành riêng | - _ . ~ | Chuỗi văn bản |
| Đã đặt trước | ! * ' ( ) ; : @ & = + $ , / ? % # [ ] | Ký tự điều khiển và/hoặc Chuỗi văn bản |
Khi tạo một URL hợp lệ, bạn phải đảm bảo rằng URL đó chỉ chứa những ký tự xuất hiện trong bảng. Việc điều chỉnh một URL để sử dụng bộ ký tự này thường dẫn đến hai vấn đề, một là bỏ sót và một là thay thế:
- Các ký tự mà bạn muốn xử lý nằm ngoài bộ ký tự nêu trên. Ví dụ: các ký tự bằng ngôn ngữ nước ngoài (chẳng hạn như
上海+中國) cần được mã hoá bằng các ký tự ở trên. Theo quy ước phổ biến, dấu cách (không được phép xuất hiện trong URL) cũng thường được biểu thị bằng ký tự dấu cộng'+'. - Các ký tự tồn tại trong bộ ký tự nêu trên dưới dạng ký tự dành riêng, nhưng cần được sử dụng theo đúng nghĩa đen.
Ví dụ:
?được dùng trong URL để cho biết phần đầu của chuỗi truy vấn; nếu muốn dùng chuỗi "? and the Mysterions", bạn cần mã hoá ký tự'?'.
Tất cả các ký tự cần được mã hoá URL đều được mã hoá bằng ký tự '%' và giá trị thập lục phân gồm 2 ký tự tương ứng với ký tự UTF-8 của chúng. Ví dụ: 上海+中國 trong UTF-8 sẽ được mã hoá URL dưới dạng %E4%B8%8A%E6%B5%B7%2B%E4%B8%AD%E5%9C%8B. Chuỗi ? and the Mysterians sẽ được mã hoá URL dưới dạng %3F+and+the+Mysterians hoặc %3F%20and%20the%20Mysterians.
Các ký tự phổ biến cần được mã hoá
Một số ký tự phổ biến phải được mã hoá là:
| Ký tự không an toàn | Giá trị được mã hoá |
|---|---|
| Không gian | %20 |
| " | %22 |
| < | %3C |
| > | %3E |
| # | %23 |
| % | %25 |
| | | %7C |
Đôi khi, việc chuyển đổi một URL mà bạn nhận được từ hoạt động đầu vào của người dùng sẽ rất khó khăn. Ví dụ: người dùng có thể nhập địa chỉ là "5th&Main St." Thông thường, bạn nên tạo URL từ các phần của URL đó, coi mọi hoạt động đầu vào của người dùng là ký tự nguyên nghĩa.
Ngoài ra, URL bị giới hạn ở 16384 ký tự đối với tất cả các dịch vụ web và API web tĩnh của Google Maps Platform. Đối với hầu hết các dịch vụ, bạn hiếm khi đạt đến giới hạn ký tự này. Tuy nhiên, xin lưu ý rằng một số dịch vụ có nhiều tham số có thể dẫn đến URL dài.