2012-05-02 21 views
7

Tôi đã thấy hai hình thức tham chiếu đến Thư viện/Dịch vụ Google Địa điểm, sử dụng JavaScript và gọi API trực tiếp, một số lần, nhưng tôi không hiểu sự khác biệt. Google Tài liệu không mô tả bất kỳ điều gì về hai phương pháp truy cập API.Khi sử dụng API Google Địa điểm, sự khác biệt giữa "sử dụng thư viện JavaScript" và "gọi API trực tiếp" là gì?

Ví dụ, câu hỏi này nói về 2 cách để truy cập vào API: OVER_QUERY_LIMIT in a loop

Và có vẻ như có một số kiểu truy cập web trực tiếp diễn ra trong câu hỏi này: Querying Google Places API using jQuery

là một cái gì đó này, nơi có một cách cũ liên quan đến việc định dạng các tham số URL và cách mới là sử dụng các cuộc gọi thư viện JavaScript?

CUỐI CÙNG TÓM TẮT EDIT: Có hai cách riêng biệt của yêu cầu dữ liệu từ Google, như mô tả trong câu trả lời @ Dan Nissenbaum của bên dưới. Và kể từ câu hỏi ban đầu của tôi, câu hỏi QUERY_LIMIT được tham chiếu ở trên đã được chỉnh sửa để bao gồm thêm thông tin về hai tùy chọn.

Trả lời

6

Có lẽ bạn đang đề cập đến sự khác biệt giữa API Google Địa điểm được thiết kế để sử dụng trên SERVER (tức là sử dụng PHP để gọi API Google Địa điểm trực tiếp) và sử dụng cách tiếp cận hoàn toàn khác với Thư viện Javascript của Google Địa điểm trong đó BROWSER thực thi Javascript bằng cách sử dụng thư viện Javascript do Google cung cấp (nội bộ kết thúc tốt đẹp gọi API Google Địa điểm, để bạn, với tư cách là lập trình viên Javascript, chỉ cần hiểu thư viện Javascript do Google cung cấp và sử dụng)?

Dưới đây là hai trường hợp.

Kịch bản # 1: Sử dụng API trực tiếp. Đối với phương pháp này, bạn phải tham khảo tài liệu API của Google cho API Google Địa điểm: https://developers.google.com/maps/documentation/places/.

Sử dụng API này hoạt động như sau (chỉ đưa ra một ví dụ đơn giản). Giả sử bạn muốn truy xuất các địa điểm trong phạm vi 1000 mét vĩ độ = -27.2531166, kinh độ = 138.8655664. Bạn cần phải nhấn một URL như được mô tả trong tài liệu API: https://developers.google.com/maps/documentation/places/#PlaceSearchRequests.

Trong ví dụ này, URL trông như thế này (nó dài):

https://maps.googleapis.com/maps/api/place/search/json?location=-27.2531166,138.8655664&radius=1000&sensor=false&key=AddYourOwnKeyHere 

Bạn cần một chìa khóa để sử dụng cá nhân của bạn, mà tôi giả sử bạn có. Có các tùy chọn khác mà bạn có thể chỉ định, chẳng hạn như giới hạn kết quả cho nhà hàng, v.v.

Khi bạn nhấn URL này, dữ liệu sẽ được trả lại ở định dạng JSON hoặc XML, được chỉ định bởi văn bản json trong URL ở trên (sử dụng văn bản xml cho xml). Dữ liệu này được trả lại chính xác như dữ liệu được trả về từ bất kỳ cuộc gọi URL nào khi bạn nhấn một URL trong trình duyệt của mình.

Bạn có thể kiểm tra điều này bằng cách chỉ cần nhập URL trực tiếp vào trình duyệt của mình và xem kết quả.

Để sử dụng API trực tiếp từ mã, bạn sẽ cần sử dụng mã truy cập URL bên ngoài bên trên mã và truy xuất kết quả bên trong mã (ví dụ: sử dụng thư viện CURL PHP hoặc sử dụng AJAX trong Javascript).

Kịch bản # 2: Bạn sử dụng thư viện Javascript mà Google cung cấp kết thúc tốt đẹp API, vì vậy bạn không cần phải xử lý nó. Tôi sẽ cập nhật câu trả lời với nhiều chi tiết hơn về điều này, nếu bạn không biết điều này là gì.

+0

Câu hỏi của tôi tập trung vào ** Google Địa điểm **, nhưng cảm ơn bạn đã cố gắng trợ giúp. Tôi đã cập nhật câu hỏi của mình để thêm một số sự rõ ràng. –

+0

Có, trong liên kết đầu tiên của bạn, ở trên (http://stackoverflow.com/questions/10409141/over-query-limit-in-a-loop), thực sự người hỏi đang đề cập đến việc sử dụng API trực tiếp (tức là, gọi một URL của Google sử dụng API REST và phân tích cú pháp kết quả XML hoặc JSON trong mã, so với việc sử dụng thư viện Javascript của Google (thư viện cho bạn) cũng thực hiện tương tự). Tôi sẽ cập nhật câu trả lời của tôi để làm cho điều này rõ ràng hơn. –

+0

Dan - cảm ơn bạn đã chia sẻ tất cả các liên kết và thông tin. Tôi nhận được sự khác biệt ngay bây giờ. Tôi không biết về tùy chọn API, bởi vì không có liên kết nào từ các tài liệu JavaScript. Và không, bạn không phải giải thích tùy chọn JavaScript; bạn đúng là tôi quen thuộc với khía cạnh đó. Đánh giá cao bạn dành thời gian - –

2

Tài liệu thảo luận hai cách tiếp cận khác nhau. Thư viện địa điểm sử dụng dịch vụ Google Địa điểm từ bên trong API Google Maps JavaScript. Nếu bạn đang sử dụng API Google Maps trong trình duyệt, đây có thể là cách tiếp cận cho bạn: https://developers.google.com/maps/documentation/javascript/places

Ngoài ra còn có dịch vụ web cho phép bạn truy vấn trực tiếp từ ứng dụng của bạn. Bạn truy vấn nó bằng cách sử dụng lệnh gọi trực tiếp tới các dịch vụ của Google. Nếu bạn cần truy cập dữ liệu trên máy chủ hoặc thiết bị di động, đây là phương pháp bạn muốn thực hiện: https://developers.google.com/maps/documentation/places

+0

Tôi đã sửa chữa; cả hai tùy chọn _are_ đều được ghi lại. Tôi sử dụng JavaScript để phát triển bản đồ của mình, vì vậy đó là nơi tôi bắt đầu tìm kiếm thông tin. Thật không may, không có đề cập đến API trong tài liệu JavaScript (ít nhất là không phải bây giờ). Có _is_ một liên kết từ tài liệu API đến tài liệu JavaScript, nhưng điều đó không giúp tôi. Cảm ơn bạn đã làm rõ và thông tin - –

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