Hướng dẫn bắt đầu nhanh này giải thích cách thiết lập một ứng dụng dòng lệnh Java đơn giản nhằm yêu cầu API YouTube Dữ liệu. Hướng dẫn nhanh này thực sự giải thích cách đưa ra hai yêu cầu API:
- Bạn sẽ sử dụng khoá API để xác định ứng dụng của mình, nhằm truy xuất thông tin về kênh YouTube của Google Developers.
- Bạn sẽ sử dụng mã ứng dụng khách OAuth 2.0 để gửi yêu cầu được uỷ quyền truy xuất thông tin về kênh YouTube của riêng mình.
Điều kiện tiên quyết
Để chạy tính năng khởi động nhanh này, bạn cần:
- Java 1.7 trở lên.
- Gradle 2.3 trở lên.
- Quyền truy cập vào Internet và trình duyệt web.
- Tài khoản Google.
Bước 1: Thiết lập dự án và thông tin xác thực
Tạo hoặc chọn một dự án trong Bảng điều khiển API. Hoàn thành các nhiệm vụ sau trong Bảng điều khiển API cho dự án của bạn:
Trong bảng điều khiển thư viện, hãy tìm kiếm API dữ liệu YouTube phiên bản 3. Nhấp vào trang thông tin cho API đó và đảm bảo API đã được bật cho dự án của bạn.
Trong bảng thông tin xác thực, hãy tạo 2 thông tin xác thực:
Tạo khoá API Bạn sẽ sử dụng khoá API để tạo các yêu cầu API không yêu cầu người dùng uỷ quyền. Ví dụ: Bạn không cần uỷ quyền của người dùng để truy xuất thông tin về một kênh YouTube công khai.
Tạo mã ứng dụng khách OAuth 2.0 Đặt loại ứng dụng thành Khác. Bạn cần sử dụng thông tin xác thực OAuth 2.0 cho những yêu cầu yêu cầu người dùng phải uỷ quyền. Ví dụ: Bạn cần có sự cho phép của người dùng để truy xuất thông tin về kênh YouTube của người dùng hiện đã được xác thực.
Tải tệp JSON chứa thông tin xác thực OAuth 2.0 xuống. Tệp có tên như
client_secret_CLIENTID.json
, trong đóCLIENTID
là mã ứng dụng khách cho dự án của bạn.
Bước 2: Chuẩn bị dự án
Hãy hoàn tất các bước sau để chuẩn bị cho dự án Gradle của bạn:
Trong thư mục đang hoạt động, hãy chạy các lệnh sau để tạo cấu trúc dự án mới:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resources
Di chuyển tệp JSON mà bạn đã tải xuống sau khi tạo mã ứng dụng khách OAuth 2.0 vào thư mục
src/main/resources
bên dưới thư mục đang làm việc, sau đó đổi tên tệp thànhclient_secret.json
.Mở tệp
build.gradle
trong thư mục đang hoạt động và thay thế nội dung của tệp bằng các nội dung sau:apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' compile 'com.google.apis:google-api-services-youtube:v3-revREVISION-CL_VERSION' }
Trong tệp
build.gradle
, bạn cần thay thế các biến REVISION và CL_VERSION bằng hai giá trị trong tài liệu về thư viện ứng dụng dành cho API Dữ liệu YouTube. Ảnh chụp màn hình dưới đây cho thấy tài liệu về API YouTube Analytics cho thấy vị trí xuất hiện hai biến này trên trang.
Bước 3: Thiết lập và chạy mẫu
Sử dụng tiện ích APIs Explorer trong bảng điều khiển bên để lấy mã mẫu để truy xuất thông tin về kênh YouTube của Google Developers. Yêu cầu này sử dụng khoá API để xác định ứng dụng của bạn và không yêu cầu người dùng uỷ quyền hay bất kỳ quyền đặc biệt nào của người dùng chạy mẫu.
- Mở tài liệu cho phương thức channel.list của API.
Trên trang đó, mục "Các trường hợp sử dụng phổ biến" chứa một bảng giải thích một số cách phổ biến mà phương thức này được sử dụng. Trang thông tin đầu tiên trong bảng là để liệt kê kết quả theo mã nhận dạng kênh.
Nhấp vào biểu tượng mã cho trang thông tin đầu tiên để mở và điền sẵn Trình khám phá API toàn màn hình.
Ở bên trái Trình khám phá API toàn màn hình hiển thị các thông tin sau:
Dưới tiêu đề Yêu cầu tham số, có một danh sách các tham số mà phương thức này hỗ trợ. Bạn phải đặt các giá trị thông số
part
vàid
. Giá trị thông sốid
,UC_x5XG1OV2P6uZZ5FSM9Ttw
, là mã nhận dạng cho kênh YouTube của Google Developers.Bên dưới các thông số, có một phần có tên là Thông tin xác thực. Trình đơn kéo xuống trong phần đó sẽ hiển thị giá trị Khoá API. Theo mặc định, Trình khám phá API sử dụng thông tin đăng nhập minh hoạ để giúp bạn bắt đầu dễ dàng hơn. Nhưng bạn sẽ sử dụng khoá API của riêng mình để chạy mẫu cục bộ.
Ở bên phải của API toàn màn hình cho phép bạn khám phá các thẻ chứa mã mẫu bằng nhiều ngôn ngữ. Chọn thẻ Java.
Sao chép mã mẫu và lưu mã đó trong tệp có tên
src/main/java/ApiExample.java
. Mọi mẫu đều sử dụng cùng một tên lớp (ApiExample
) để bạn không cần sửa đổi tệpbuild.gradle
để chạy các mẫu khác nhau.Trong mẫu bạn đã tải xuống, hãy tìm chuỗi
YOUR_API_KEY
và thay thế bằng khoá API mà bạn đã tạo ở bước 1 của quá trình bắt đầu nhanh này.Chạy mẫu từ dòng lệnh. Trong thư mục đang hoạt động, hãy chạy:
gradle -q run
Mẫu sẽ thực thi yêu cầu và in phản hồi cho
STDOUT
.
Bước 4: Chạy một yêu cầu được cho phép
Trong bước này, bạn sẽ sửa đổi mã mẫu để thay vì truy xuất thông tin về kênh YouTube Google Developers, mã này sẽ truy xuất thông tin về kênh YouTube của bạn. Yêu cầu này cần được người dùng cho phép.
Quay lại tài liệu về phương thức channel.list của API.
Trong phần "Các trường hợp sử dụng phổ biến", hãy nhấp vào biểu tượng mã cho danh sách thứ ba trong bảng. Trường hợp sử dụng đó là gọi phương thức
list
cho "kênh của tôi".Xin nhắc lại, ở bên trái Trình khám phá API toàn màn hình, bạn sẽ thấy danh sách các thông số đứng trước phần Credentials (Thông tin xác thực). Tuy nhiên, có hai thay đổi trong ví dụ này, trong đó bạn truy xuất thông tin về kênh Google Developers:
Trong mục tham số, thay vì đặt giá trị tham số
id
, bạn phải đặt giá trị tham sốmine
thànhtrue
. Thao tác này hướng dẫn máy chủ API truy xuất thông tin về kênh của người dùng hiện đã được xác thực.Trong phần Credentials (Thông tin xác thực), trình đơn kéo xuống sẽ chọn tuỳ chọn cho Google OAuth 2.0.
Ngoài ra, nếu nhấp vào đường liên kết Show scope (Hiện phạm vi), bạn nên kiểm tra phạm vi https://www.googleapis.com/auth/youtube.readonly.
Như trong ví dụ trước, hãy chọn thẻ Java, sao chép mã mẫu và lưu vào
src/main/java/ApiExample.java
.Chạy mẫu từ dòng lệnh. Trong thư mục đang hoạt động, hãy chạy:
gradle -q run
Mẫu sẽ cố mở một cửa sổ hoặc thẻ mới trong trình duyệt mặc định của bạn. Nếu không thành công, hãy sao chép URL từ cửa sổ dòng lệnh và mở theo cách thủ công trong trình duyệt.
Nếu chưa đăng nhập vào Tài khoản Google, bạn sẽ được nhắc đăng nhập. Nếu đăng nhập vào nhiều Tài khoản Google, bạn sẽ được yêu cầu chọn một tài khoản để sử dụng cho việc uỷ quyền.
Nhấp vào nút để cấp cho ứng dụng quyền truy cập vào các phạm vi được chỉ định trong mã mẫu.
Mẫu sẽ tự động tiến hành và bạn có thể đóng thẻ trình duyệt được dùng cho luồng xác thực.
Phản hồi API sẽ được in lại cho
STDOUT
.