Để lấy bất kỳ dữ liệu nào từ Lịch Google được liên kết của địa điểm, địa điểm đó phải đồng ý với trang web để truy cập
Như tài liệu trong sơ đồ ở trên, sự đồng ý cấp địa chỉ cung cấp cho trang web một mã ủy quyền [mã ủy quyền], sau đó trang web có thể trao đổi mã thông báo truy cập [mã thông báo truy cập] bằng Google API. Mã thông báo truy cập này chỉ có thể được sử dụng để tương tác với dịch vụ mà địa điểm có quyền truy cập đồng ý. Trong trường hợp này, đó là Lịch Google
Tạo một dự ánBước đầu tiên là yêu cầu khách hàng thiết lập dự án bằng tài khoản Google của họ. Hướng dẫn bắt đầu nhanh từ Google mang đến một hướng dẫn tốt. https. // nhà phát triển. Google. com/google-apps/calendar/quickstart/php
Trong hướng dẫn cũng có 1 bản demo, bạn có thể tham khảo nó nhé
Khi dự án được thiết lập, khách hàng cần thiết lập thông tin đăng nhập để truy cập Google Calendar API thông qua dự án này
Thêm thông tin đăng nhập
Có một hướng dẫn để tạo thông tin đăng nhập. Nó không rõ ràng, vì vậy đây là ảnh chụp màn hình của những gì tôi thiết lập. Lưu ý. Tôi đã sử dụng nội dung demo thay vì dữ liệu khách hàng
Bước đầu tiên, hỏi API nào sẽ được sử dụng và cách truy cập API
Bước thứ hai, thiết lập danh sách trắng URL và thiết lập đường dẫn gọi lại oAuth.
Bước thứ ba, thiết lập cài đặt cho biểu mẫu đồng ý, các địa điểm sẽ được trình bày.
Bước thứ tư, cung cấp cho bạn ID khách hàng và thông tin đăng nhập [thông tin đăng nhập].
Nhấp vào 'tải xuống' trên màn hình cuối cùng, cung cấp cho bạn tệp client_id. json, đây là từ khóa trang web cho API thông qua dự án máy khách. Điều này nên được lưu trữ trên máy chủ ở một vị trí riêng tư
{
"web":{
"client_id":"[hash-string].apps.googleusercontent.com",
"project_id":"calendar-integration-[project-id]",
"auth_uri":"//accounts.google.com/o/oauth2/auth",
"token_uri":"//accounts.google.com/o/oauth2/token",
"auth_provider_x509_cert_url":"//www.googleapis.com/oauth2/v1/certs",
"client_secret":"[hash-string]",
"redirect_uris":[
"//www.example.com/oauth2callback"
],
"javascript_origins":[
"//www.example.com"
]
}
}
Yêu cầu ứng dụng khách Google APIVì đây là trang web Laravel, chúng tôi đã thiết lập Composer nên trước tiên, chúng tôi yêu cầu ứng dụng khách Google API
composer require google/apiclient:^2.0
Điều này cung cấp cho chúng tôi Thư viện PHP để kết nối với các API của Google, cộng với việc tải các hàm trợ giúp cho từng API và OAuth2
Thông tin chi tiết có thể được tìm thấy ở đây. https. //github. com/google/google-api-php-client
ủy quyềnYêu cầu sự đồng ý
Bước đầu tiên cho trang web là cung cấp một phương tiện tiện ích cho các địa điểm để đồng ý cho trang web truy cập Lịch Google của họ
Vì vậy, chúng tôi cần tạo một liên kết sẽ gửi địa điểm tới Google, nơi sẽ hiển thị màn hình đồng ý
Để thực hiện điều này, chúng tôi sẽ khởi tạo Google Client do google/apiclient cung cấp và cài đặt công cụ có thể cho ứng dụng của chúng tôi.