Các ví dụ sau đây cho biết cách sử dụng API dữ liệu YouTube (v3) để thực hiện các chức năng liên quan đến video.
Truy xuất video đã tải lên của kênh
Ví dụ này truy xuất video được tải lên kênh cụ thể. Ví dụ có hai bước:
-
Bước 1: Truy xuất mã nhận dạng danh sách phát cho các video đã tải lên của kênh
Gọi phương thức
channels.list
để truy xuất ID của danh sách phát chứa các video đã tải lên của kênh. Giá trị tham sốpart
của yêu cầu phải bao gồmcontentDetails
dưới dạng một trong các phần tài nguyênchannel
đang được truy xuất. Trong phản hồi API, thuộc tínhcontentDetails.relatedPlaylists.uploads
chứa mã nhận dạng danh sách phát.Có một số cách để nhận dạng kênh:
-
Đặt giá trị tham số
mine
thànhtrue
để truy xuất thông tin cho kênh YouTube của người dùng hiện đã được xác thực. Yêu cầu của bạn phải được cấp phép bằng OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Đặt thông số
forUsername
thành tên người dùng YouTube để truy xuất thông tin cho kênh liên kết với tên người dùng đó. Ví dụ này đặt giá trị tham sốforUsername
thànhGoogle
để truy xuất thông tin cho kênh YouTube chính thức của Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &forUsername=Google
-
Đặt thông số
id
thành mã nhận dạng kênh YouTube để nhận dạng duy nhất kênh mà bạn đang truy xuất thông tin. Ví dụ này đặt tham sốid
thànhUCK8sQmJBp8GCxrOtXWBpyEA
, cũng xác định kênh YouTube chính thức của Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &id=UCK8sQmJBp8GCxrOtXWBpyEA
-
-
Bước 2: Truy xuất danh sách video đã tải lên
Gọi phương thức
playlistItems.list
để truy xuất danh sách các video đã tải lên. Đặt giá trị của tham sốplaylistId
thành giá trị thu được ở bước 1. Trong ví dụ này, giá trị thông số được đặt thànhUUK8sQmJBp8GCxrOtXWBpyEA
, là danh sách các video đã tải lên kênh YouTube chính thức của Google.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.playlistItems.list? part=snippet,contentDetails,status &playlistId=UUK8sQmJBp8GCxrOtXWBpyEA
Truy xuất các video phổ biến nhất
Ví dụ này cho biết cách lấy danh sách các video phổ biến nhất trên YouTube, được chọn bằng một thuật toán kết hợp nhiều tín hiệu khác nhau để xác định mức độ phổ biến nói chung.
Để truy xuất danh sách video phổ biến nhất, hãy gọi phương thức videos.list
và đặt giá trị của tham số chart
thành mostPopular
. Khi truy xuất danh sách này, bạn cũng có thể đặt một hoặc cả hai thông số sau:
regionCode
: Hướng dẫn API trả về danh sách video cho khu vực đã chỉ định.videoCategoryId
: Xác định danh mục video nên truy xuất các video phổ biến nhất.
Yêu cầu dưới đây truy xuất các video thể thao phổ biến nhất ở Tây Ban Nha:
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.search.list? part=snippet &chart=mostPopular ®ionCode=es &videoCategoryId=17
Tải video lên
Vì APIs Explorer không hỗ trợ khả năng tải tệp lên, nên mô tả này không liên kết đến ví dụ có thể thực thi. Các tài nguyên sau sẽ giúp bạn sửa đổi ứng dụng của mình để ứng dụng có thể tải lên video bằng API v3:
-
Tài liệu cho phương thức videos.insert của API có chứa một số mã mẫu giải thích cách tải video lên bằng các ngôn ngữ lập trình khác nhau.
-
Hướng dẫn Tải lên tiếp nối giải thích trình tự các yêu cầu HTTP mà ứng dụng sử dụng để tải video lên bằng quy trình tải lên có thể tiếp tục. Hướng dẫn này chủ yếu dành cho nhà phát triển không thể sử dụng thư viện ứng dụng Google API, một số thư viện này cung cấp hỗ trợ gốc cho tải lên có thể tiếp tục lại.
-
Ví dụ về JavaScript để tải lên video sử dụng CORS (chia sẻ tài nguyên nhiều nguồn gốc) để minh họa cách tải lên tệp video qua trang web. Thư viện tải lên CORS mà API phiên bản 3 sử dụng đương nhiên hỗ trợ quá trình tải lên tiếp nối. Ngoài ra, ví dụ minh họa cách kiểm tra trạng thái của video đã tải lên bằng cách truy xuất phần
processingDetails
của tài nguyênvideo
cũng như cách xử lý các thay đổi trạng thái cho video đã tải lên.
Kiểm tra trạng thái của video đã tải lên
Ví dụ này cho biết cách kiểm tra trạng thái của video đã tải lên. Video tải lên sẽ hiển thị ngay lập tức trong nguồn cấp dữ liệu video đã tải lên của người dùng đã xác thực. Tuy nhiên, video sẽ không hiển thị trên YouTube cho đến khi được xử lý.
-
Bước 1: Tải video lên
Gọi phương thức
videos.insert
để tải video lên. Nếu yêu cầu thành công, phản hồi API sẽ chứa tài nguyênvideo
xác định ID video duy nhất cho video được tải lên. -
Bước 2: Kiểm tra trạng thái của video
Gọi phương thức
videos.list
để kiểm tra trạng thái video. Đặt giá trị của thông sốid
thành mã video nhận được trong bước 1. Đặt giá trị của tham sốpart
thànhprocessingDetails
.Nếu yêu cầu được xử lý thành công, phản hồi API sẽ chứa tài nguyên
video
. Kiểm tra giá trị của thuộc tínhprocessingDetails.processingStatus
để xác định xem YouTube có còn xử lý video đó hay không. Giá trị của thuộc tính sẽ thay đổi thành giá trị không phảiprocessing
, chẳng hạn nhưsucceeded
hoặcfailed
, khi YouTube xử lý xong video.Nội dung yêu cầu là tài nguyên
video
, trong đó thuộc tínhid
chỉ định ID video của video mà bạn đang xóa. Trong ví dụ này, tài nguyên cũng chứa một đối tượngrecordingDetails
.Yêu cầu dưới đây kiểm tra trạng thái của video. Để hoàn tất yêu cầu trong APIs Explorer, bạn cần đặt giá trị của thuộc tính
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.list? part=snippet,processingDetails &id=VIDEO_ID
Lưu ý: Ứng dụng của bạn có thể thăm dò API để kiểm tra định kỳ trạng thái của video mới tải lên. Sau khi video được xử lý, ứng dụng của bạn có thể tạo bản tin hoặc tiếp tục thực hiện hành động khác tùy thuộc vào trạng thái của video.
Cập nhật video
Ví dụ này cho biết cách cập nhật video để thêm thông tin về thời gian và địa điểm quay video. Ví dụ có các bước sau:
-
Bước 1: Truy xuất mã video
Làm theo các bước ở trên để truy xuất video đã tải lên cho kênh của người dùng hiện đã được xác thực. Danh sách này có thể dùng để hiển thị danh sách video bằng cách sử dụng mã nhận dạng của mỗi video làm khóa.
Lưu ý: Có nhiều cách khác nhau để lấy ID video, chẳng hạn như truy xuất kết quả tìm kiếm hoặc liệt kê mục trong danh sách phát. Tuy nhiên, vì chủ sở hữu video chỉ có thể cập nhật video nên việc truy xuất danh sách video do người dùng ủy quyền yêu cầu API có thể là bước đầu tiên trong quá trình này.
-
Bước 2: Cập nhật video
Hãy gọi phương thức
videos.update
để cập nhật một video cụ thể. Đặt giá trị của tham sốpart
thànhrecordingDetails
. (Giá trị thông số tùy thuộc vào trường siêu dữ liệu của video đang được cập nhật.)Nội dung yêu cầu là tài nguyên
video
, trong đó thuộc tínhid
chỉ định ID video của video mà bạn đang cập nhật. Trong ví dụ này, tài nguyên cũng chứa một đối tượngrecordingDetails
.Tài nguyên mẫu bên dưới cho biết video được quay vào ngày 30 tháng 10 năm 2013, tại Boston:
{ "id": "VIDEO_ID", "recordingDetails": { "location": { "latitude": "42.3464", "longitude": "-71.0975" } "recordingDate": "2013-10-30T23:15:00.000Z" } }
Để hoàn tất yêu cầu trong APIs Explorer, bạn cần đặt giá trị của thuộc tính
id
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.update? part=snippet
Tải hình thu nhỏ tùy chỉnh lên và đặt hình ảnh đó cho video
Bạn có thể sử dụng phương thức thumbnails.set
của API v3 để tải hình thu nhỏ tùy chỉnh lên và đặt cho video. Trong yêu cầu của bạn, giá trị của thông số videoId
sẽ xác định video sẽ được sử dụng hình thu nhỏ.
Không thể kiểm tra truy vấn này bằng APIs Explorer bởi vì APIs Explorer không hỗ trợ khả năng tải lên tệp phương tiện, đây là một yêu cầu đối với phương pháp này.
Xóa video
Ví dụ này cho biết cách xóa video. Ví dụ có các bước sau:
-
Bước 1: Truy xuất mã video
Làm theo các bước ở trên để truy xuất video đã tải lên cho kênh của người dùng hiện đã được xác thực. Danh sách này có thể dùng để hiển thị danh sách video bằng cách sử dụng mã nhận dạng của mỗi video làm khóa.
Lưu ý: Có nhiều cách khác nhau để lấy ID video, chẳng hạn như truy xuất kết quả tìm kiếm hoặc liệt kê mục trong danh sách phát. Tuy nhiên, vì chỉ có chủ sở hữu video mới có thể xóa video nên việc truy xuất danh sách video do người dùng ủy quyền yêu cầu API có thể là bước đầu tiên trong quá trình này.
-
Bước 2: Xóa video
Gọi phương thức
videos.delete
để xoá một video cụ thể. Trong yêu cầu, tham sốid
chỉ định ID video của video mà bạn đang xóa. Yêu cầu phải được cấp phép qua OAuth 2.0. Nếu đang kiểm thử truy vấn này trong APIs Explorer, bạn sẽ cần thay thế một mã video hợp lệ cho giá trị thông sốid
.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Báo cáo video lạm dụng
Ví dụ này cho biết cách báo cáo video chứa nội dung lạm dụng. Ví dụ có các bước sau:
-
Bước 1: Truy xuất mã nhận dạng để giải thích lý do báo cáo về video
Gửi yêu cầu được uỷ quyền đến phương thức
videoAbuseReportReasons.list
để truy xuất danh sách các lý do hợp lệ cho việc gắn cờ video. Tài nguyênvideoAbuseReportReason
mẫu dưới đây chứa thông tin gắn cờ video chứa nội dung spam hoặc gây hiểu lầm.{ "kind": "youtube#videoAbuseReportReason", "etag": "\"tbWC5XrSXxe1WOAx6MK9z4hHSU8/Or2VqBIilpHU7j__oPzUFCvGVBw\"", "id": "S", "snippet": { "label": "Spam or misleading", "secondaryReasons": [ { "id": "27", "label": "Spam or mass advertising" }, { "id": "28", "label": "Misleading thumbnail" }, { "id": "29", "label": "Malware or phishing" }, { "id": "30", "label": "Pharmaceutical drugs for sale" }, { "id": "31", "label": "Other misleading info" } ] } }
Như đã nêu trong tài nguyên này, lý do này được liên kết với một danh sách các lý do phụ. Khi gắn cờ một video vì có chứa nội dung vi phạm, bạn cần cung cấp mã nhận dạng và lý do chính đáng.
-
Bước 2: Gắn cờ cho video vì có nội dung vi phạm
Gửi yêu cầu được ủy quyền đến phương thức
Thuộc tínhvideos.reportAbuse
để báo cáo video thực sự. Nội dung yêu cầu là đối tượng JSON xác định cả video đang bị gắn cờ và lý do video bị gắn cờ. Như đã lưu ý trong bước 1, chúng tôi ủng hộ và khuyến khích những lý do phụ.videoId
của đối tượng JSON xác định video đang bị gắn cờ.Đối tượng JSON mẫu bên dưới gắn cờ video chứa nội dung spam hoặc gây hiểu lầm và cụ thể hơn là sử dụng hình thu nhỏ gây hiểu lầm. Như đã trình bày trong đối tượng JSON mẫu ở trên, ID cho nội dung Spam hoặc gây hiểu lầm là S. Mã cho Hình thu nhỏ gây hiểu lầm là 28.
{ "videoId": "VIDEO_ID", "reasonId": "S", "secondaryReasonId": "28", "comments": "Testing the video flagging feature.", "language": "en" }
Yêu cầu
videos.reportAbuse
phải được cấp phép bằng OAuth 2.0. Đường liên kết dưới đây sẽ tải đối tượng JSON ở trên trong APIs Explorer. Để kiểm tra truy vấn, bạn cần thay thế một mã video hợp lệ cho giá trị thuộc tínhvideoId
. Xin nhớ rằng việc gửi yêu cầu này thực sự sẽ gắn cờ video.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse