2008-08-06 43 views
16

Gần đây, chúng tôi đã phát hiện thấy API Google Maps không phát độc đáo với SSL. Đủ công bằng, nhưng một số tùy chọn để khắc phục điều này mà những người khác đã sử dụng hiệu quả là gì?Tùy chọn cho Google Maps qua SSL

Will the Maps API work over SSL (HTTPS)?

Tại thời điểm này, API Maps không phải là có sẵn trên một (SSL) an toàn kết nối. Nếu bạn đang chạy API Maps trên trang web bảo mật, trình duyệt có thể cảnh báo người dùng về các đối tượng không an toàn trên màn hình.

Chúng tôi đã xem xét các tùy chọn sau

  1. Splitting trang để thu thập thẻ tín dụng (yêu cầu cho SSL) không phải là trên cùng một trang như Google Map.
  2. Chuyển sang một nhà cung cấp bản đồ khác, chẳng hạn như Earth ảo. Có tin đồn rằng họ hỗ trợ SSL.
  3. Chơi thủ thuật với IFRAME. Nghe kludgy.
  4. Thực hiện cuộc gọi đến Google. Âm thanh như rất nhiều chi phí.

Có các tùy chọn nào khác hoặc bất kỳ ai có thông tin chi tiết về các tùy chọn mà chúng tôi đã xem xét không?

+2

Hi Brad. Thay vào đó, thời gian để chấp nhận http://stackoverflow.com/questions/3437/options-for-google-maps-over-ssl/5337403#5337403? Google Maps hiện hoạt động với SSL miễn phí. –

+0

Google gần đây đã phát hành API Maps cho các trang web an toàn: [API Maps qua SSL hiện khả dụng cho tất cả] (http://googlegeodevelopers.blogspot.com.br/2011/03/maps-apis-over-ssl-now-available-to -all.html) – mah2602

Trả lời

14

Tôi đồng ý với hai câu trả lời trước đó trong trường hợp này, có thể tốt hơn từ góc độ khả năng sử dụng để chia hai chức năng thành các màn hình riêng biệt. Bạn thực sự muốn người dùng của mình tập trung vào việc nhập thông tin thẻ tín dụng hoàn chỉnh và chính xác và việc có bản đồ trên cùng một màn hình có thể khiến bạn mất tập trung.

Vì lý do này, Virtual Earth chắc chắn hỗ trợ đầy đủ SSL. Để bật tính năng này, bạn cần phải thay đổi tham chiếu tập lệnh từ http: // thành https: // và thêm & s = 1 vào URL, ví dụ:

<script src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1" type="text/javascript"></script> 

trở thành

<script src="https://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.1&s=1" type="text/javascript"></script> 
+0

SSL của chúng không hợp lệ, chúng cũng sử dụng nội dung hỗn hợp. –

+0

Cảm ơn! Đây là một ví dụ làm việc: http://bl.ocks.org/885346 – mager

3

Tôi sẽ đi với giải pháp đầu tiên của bạn. Điều này cho phép người dùng tập trung vào nhập chi tiết thẻ tín dụng của họ.

Sau đó, bạn có thể chuyển chúng sang trang web khác yêu cầu hoặc cung cấp thêm thông tin liên quan đến Google Map.

5

Điều này có vẻ như một yêu cầu kinh doanh/vấn đề khả năng sử dụng - bạn có lý do chính đáng để đặt bản đồ trên trang thẻ tín dụng không? Nếu có, có lẽ nó đáng làm việc thông qua một số vấn đề kỹ thuật.

Bạn có thể thử sử dụng Mapstraction để bạn có thể chuyển sang nhà cung cấp hỗ trợ SSL và chuyển về Google nếu họ hỗ trợ trong tương lai.

3

Nếu bạn là khách hàng Google Maps API Premier, sau đó SSL được hỗ trợ. Chúng tôi sử dụng nó và nó hoạt động tốt.

Trước khi Google cung cấp SSL, chúng tôi đã ủy quyền tất cả lưu lượng truy cập và hoạt động này có thể chấp nhận được. Bạn mất lợi thế của CDN của Google khi bạn sử dụng phương pháp này và bạn có thể bị IP của bạn bị cấm vì nó sẽ xuất hiện mà bạn đang tạo ra rất nhiều lưu lượng truy cập.

+0

Google Maps Premier rất tuyệt, nếu bạn làm việc cho một công ty lớn hơn với 10k chỉ cần ngồi xung quanh. Nếu bạn giống tôi, bạn dường như không may mắn. – baudtack

6

Google Maps API Premier tính phí bạn 10 nghìn mỗi năm.

Nhận xét về vấn đề này! Cùng nhau chúng ta có thể có thể để thuyết phục Google:

http://code.google.com/p/gmaps-api-issues/issues/detail?id=591

+0

API Maps v3, API bản đồ tĩnh và Dịch vụ web API Maps hiện khả dụng cho tất cả các nhà phát triển trên https: http://googlegeodevelopers.blogspot.com/2011/03/maps-apis-over-ssl-now- available-to-all.html – fabian

8

Chỉ cần để thêm vào này

http://googlegeodevelopers.blogspot.com/2011/03/maps-apis-over-ssl-now-available-to-all.html

Đã không cố gắng di chuyển bản đồ SSL của tôi (kết thúc bằng cách sử dụng bản đồ Bing api) trở lại Google nhưng cũng có thể được trên thẻ.

+0

Dường như làm việc tuyệt vời! Tài liệu: http://code.google.com/intl/en-US/apis/maps/documentation/javascript/basics.html#HTTPS –

+0

+1 Cảm ơn bạn đã liên kết! –

1

Nếu bạn đang nhận được AN SINH ALERT trên IE 9 khi hiển thị bản đồ của Google, sử dụng

<script src="https://maps.google.com/maps?file=api&v=2&hl=en&tab=wl&z=6&sensor=true&key=<?php echo $key;?> 
" type="text/javascript"></script> 

thay vì

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE" 
    type="text/javascript"></script> 
+4

Các liên kết quảng bá blog cá nhân của bạn được cau mày tại đây. Thay vào đó, tôi đã lấy nội dung của bài đăng blog của bạn và đặt nó trong câu trả lời của bạn. Hãy làm điều này trong tương lai cho câu trả lời của bạn. –

0

Tôi đã chỉ cần loại bỏ các giao thức http và nó làm việc!

Từ này:

<script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script> 

Để này:

<script src="//maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script> 
Các vấn đề liên quan