2010-02-02 39 views
10

Tôi đang phát triển một CMS sẽ sử dụng nhiều tên miền và tôi chỉ phải sử dụng một tập lệnh bản đồ google trong trang của mình.Sử dụng bản đồ google không có Khóa API?

Có cách nào để sử dụng bản đồ google không có khóa API không?

Nếu không, nó không hoạt động?

+4

Tại sao không cho phép người dùng CMS xác định khóa API của riêng họ nếu họ cần bản đồ? –

Trả lời

1

Khá tự tin rằng để sử dụng API của họ, bạn cần có Khóa API.

Có lẽ Google maps premiere có thể tuân thủ vấn đề cụ thể của bạn?

+1

Trong API V3 mới, bạn không còn cần khóa. – wenbert

+0

... trừ khi bạn đang cố gắng tải ứng dụng bản đồ web trong chế độ xem web của ứng dụng android. – topwik

1

Bạn có thể thêm một ApplicationSetting đến file Web.Config của bạn như vậy

<appSettings> 
    <add key="GoogleMapAPI" value="XXXXXX" /> 
</appSettings> 

cho mỗi tên miền?

Sau đó thêm video này vào trang của bạn

<script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&key=<%=ConfigurationManager.ApplicationSettings["GoogleMapAPI"] %>&hl=de" 

Bạn có thể dàn dựng một cái gì đó tương tự như sử dụng cơ sở dữ liệu của bạn hoặc tiêu đề máy chủ của bạn để quản lý từng chìa khóa cho mỗi tên miền.

15

Google Maps API V3 không yêu cầu khóa. Tuy nhiên,

Giống như V2, bạn chỉ có thể sử dụng ứng dụng này cho các ứng dụng miễn phí và có thể truy cập công khai. Nếu là sản phẩm thương mại, bạn cần có Google Maps API Premier

+0

nếu bạn cố gắng tải một trang web có bản đồ web goolge trên trang web đó trong chế độ xem web trên Android, bạn cần có một khóa hợp lệ. và khóa bạn muốn sử dụng cho chế độ xem bản đồ android sẽ không hoạt động. – topwik

1

Nếu bạn muốn thay đổi khóa API (cho V2) trong JavaScript, bạn có thể viết trình bao bọc chứa mã để bắt đầu bản đồ của bạn. Mã JS sau đó kết quả đầu ra một khóa API dựa trên tên máy chủ:

if (document.domain=="[HOSTNAME 1]") { 

    document.write('[JS TAG to Google Maps API with HOSTNAME 1 Key]') 

} else if (document.domain=="[HOSTNAME 2]") { 

    document.write('[JS TAG to Google Maps API with HOSTNAME 2 Key]') 

vv ...

2

này có thể với bất kỳ phiên bản của Google Maps API, như mô tả here. Về cơ bản, điều duy nhất trên bản đồ thực sự hiện ra nếu được sử dụng mà không có khóa là hiển thị một cảnh báo phàn nàn về nó. Nếu bạn bẫy cảnh báo và ngăn không cho nó hiển thị, bản đồ sẽ hoạt động như bình thường.

Ví dụ ở đây: http://codethink.no-ip.org/mapHacks.html

4

Theo trang Google Maps API FAQ:

Google Maps Javascript API v3 và Maps API hình ảnh trước đây đã không yêu cầu một khóa API giao diện điều khiển. Điều này vẫn được hỗ trợ cho các ứng dụng cũ để đảm bảo khả năng tương thích ngược, nhưng không còn được đề xuất cho các ứng dụng mới nữa.

tôi cũng chỉ ra rằng their examples không bao gồm một khóa API hoặc:

<script src="https://maps.googleapis.com/maps/api/js?v=3.exp"></script> 

Giống như Chris B nói trong câu trả lời của mình, bạn cần phải có một phím Google Maps API Premier nếu nó là để sử dụng thương mại. Xem FAQ về chủ đề này.

+1

Bây giờ, bạn cần sử dụng khóa api, Bạn có thể cập nhật câu trả lời của mình với thông tin không về các khóa api mới như thế nào nó sẽ hoạt động nếu tôi không cung cấp nó? –

Các vấn đề liên quan