Các ví dụ sau đây cho biết cách sử dụng YouTube Data API (phiên bản 3) để 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 một kênh
Ví dụ này truy xuất các video được tải lên một kênh cụ thể. Ví dụ này có hai bước:
-
Bước 1: Truy xuất mã danh sách phát của các video mà kênh đã tải lên
Gọi phương thức
channels.list
để truy xuất mã nhận dạng của danh sách phát chứa các video mà kênh đã tải lên. 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ã danh sách phát.Có một số cách để xác định kênh đó:
-
Đặt giá trị thông 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 uỷ quyền bằng OAuth 2.0.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channels.list? part=contentDetails &mine=true
-
Đặt tham số
forUsername
thành tên người dùng trên YouTube để truy xuất thông tin về kênh được 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 giúp xác định duy nhất kênh mà bạn đang truy xuất thông tin. Ví dụ này đặt thông sốid
thànhUCK8sQmJBp8GCxrOtXWBpyEA
, cũng là giá trị nhận dạng 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 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 video được 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 truy xuất danh sách những video phổ biến nhất trên YouTube. Danh sách này đượ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 tổng thể.
Để 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 tham số sau:
regionCode
: Hướng dẫn API trả về danh sách video cho khu vực được chỉ định.videoCategoryId
: Xác định danh mục video cần truy xuất video phổ biến nhất.
Yêu cầu bên dưới truy xuất những 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ì Trình khám phá API không hỗ trợ tính năng tải tệp lên, nên nội dung mô tả này không liên kết đến một ví dụ có thể thực thi. Các tài nguyên sau đây sẽ giúp bạn sửa đổi ứng dụng để có thể tải video lên bằng API phiên bản 3:
-
Tài liệu về phương thức videos.insert của API chứa một số mã mẫu giải thích cách tải video lên bằng nhiều ngôn ngữ lập trình.
-
Hướng dẫn về Tính năng 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 tiếp nối. Hướng dẫn này chủ yếu dành cho những nhà phát triển không thể sử dụng thư viện ứng dụng API của Google, một số thư viện trong đó cung cấp tính năng hỗ trợ gốc cho tính năng tải lên có thể tiếp tục.
-
Ví dụ về JavaScript để tải video lên sử dụng CORS (chia sẻ tài nguyên trên nhiều nguồn gốc) để minh hoạ cách tải tệp video lên thông qua một trang web. Thư viện tải lên CORS mà API phiên bản 3 sử dụng tự nhiên hỗ trợ tính năng tải lên có thể tiếp tục. Ngoài ra, ví dụ này minh hoạ 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 về trạng thái của video đã tải lên.
Kiểm tra trạng thái của video đã tải lên
Ví dụ này cho thấy cách kiểm tra trạng thái của một video đã tải lên. Video được tải lên sẽ xuất hiện ngay lập tức trong trang video đã tải lên của người dùng đã xác thực. Tuy nhiên, video sẽ không xuất hiện trên YouTube cho đến khi được xử lý xong.
-
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 mã video duy nhất cho video đã 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 của video. Đặt giá trị của tham sốid
thành mã video thu được ở 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 đang xử lý video hay không. Giá trị của thuộc tính này sẽ thay đổi thành một giá trị khác ngoàiprocessing
, chẳng hạn nhưsucceeded
hoặcfailed
, khi YouTube xử lý xong video.Nội dung yêu cầu là một tài nguyên
video
, trong đó thuộc tínhid
chỉ định mã video của video mà bạn đang xoá. Trong ví dụ này, tài nguyên cũng chứa một đối tượngrecordingDetails
.Yêu cầu bên dưới kiểm tra trạng thái của một video. Để hoàn tất yêu cầu trong Trình khám phá API, 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ò ý kiến API để định kỳ kiểm tra trạng thái của video mới tải lên. Sau khi xử lý video, ứng dụng của bạn có thể tạo một thông báo hoặc tiến hành một hành động khác tuỳ 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ụ này 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. Bạn có thể dùng danh sách này để hiển thị danh sách video, sử dụng mã nhận dạng của mỗi video làm khoá.
Lưu ý: Có nhiều cách khác để lấy mã video, chẳng hạn như truy xuất kết quả tìm kiếm hoặc liệt kê các mục trong danh sách phát. Tuy nhiên, vì chỉ chủ sở hữu video mới có thể cập nhật video, nên việc truy xuất danh sách video do người dùng uỷ quyền cho yêu cầu API sở hữu có thể là bước đầu tiên trong quy trình này.
-
Bước 2: Cập nhật video
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ị tham số phụ 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à một tài nguyên
video
, trong đó thuộc tínhid
chỉ định mã 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 Trình khám phá API, 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ỏ tuỳ chỉnh lên và đặt hình thu nhỏ đó cho một video
Bạn có thể sử dụng phương thức thumbnails.set
của API phiên bản 3 để tải hình thu nhỏ tuỳ chỉnh lên và đặt hình thu nhỏ đó cho một video. Trong yêu cầu của bạn, giá trị của thông số videoId
xác định video sẽ sử dụng hình thu nhỏ.
Bạn không thể kiểm thử truy vấn này bằng Trình khám phá API vì Trình khám phá API không hỗ trợ tính năng tải tệp phương tiện lên (đây là yêu cầu đối với phương thức này).
Xóa video
Ví dụ này cho biết cách xoá một video. Ví dụ này 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. Bạn có thể dùng danh sách này để hiển thị danh sách video, sử dụng mã nhận dạng của mỗi video làm khoá.
Lưu ý: Có nhiều cách khác để lấy mã video, chẳng hạn như truy xuất kết quả tìm kiếm hoặc liệt kê các mục trong danh sách phát. Tuy nhiên, vì chỉ chủ sở hữu video mới có thể xoá video, nên việc truy xuất danh sách video do người dùng uỷ quyền cho yêu cầu API sở hữu có thể là bước đầu tiên trong quy trình này.
-
Bước 2: Xoá 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 mã video của video mà bạn đang xoá. Yêu cầu phải được uỷ quyền bằng OAuth 2.0. Nếu đang kiểm thử truy vấn này trong Trình khám phá API, bạn cần thay thế giá trị tham sốid
bằng mã video hợp lệ.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.delete? id=VIDEO_ID
Báo cáo video có hành vi sai trái
Ví dụ này cho biết cách báo cáo một video có chứa nội dung sai trái. Ví dụ này có các bước sau:
-
Bước 1: Truy xuất giấy tờ tuỳ thân giải thích lý do video bị báo cáo
Gửi một yêu cầu được uỷ quyền đến phương thức
videoAbuseReportReasons.list
để truy xuất danh sách lý do hợp lệ để gắn cờ video. Tài nguyênvideoAbuseReportReason
mẫu bên dưới chứa thông tin để gắn cờ một video có nội dung rác 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ư trong tài nguyên, lý do này được liên kết với danh sách các lý do phụ. Khi gắn cờ một video vì chứa nội dung rác, bạn cần cung cấp mã video và lý do. Bạn cũng nên cung cấp một lý do phụ.
-
Bước 2: Gắn cờ video có nội dung sai trái
Gửi yêu cầu được uỷ quyền đến phương thức
Thuộc tínhvideos.reportAbuse
để thực sự báo cáo video. Nội dung yêu cầu là một đố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 ý ở bước 1, đối với một số loại lý do, bạn nên cung cấp 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 đánh dấu một video vì chứa nội dung vi phạm hoặc gây hiểu lầm, cụ thể là vì sử dụng hình thu nhỏ gây hiểu lầm. Như trong đối tượng JSON mẫu ở trên, mã nhận dạng cho nội dung Lừa đảo hoặc gây hiểu lầm là S. Mã nhận dạng 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" }
Bạn phải uỷ quyền cho yêu cầu
videos.reportAbuse
bằng OAuth 2.0. Đường liên kết bên dưới sẽ tải đối tượng JSON ở trên trong Trình khám phá API. Để kiểm thử truy vấn, bạn cần thay thế giá trị thuộc tínhvideoId
bằng mã video hợp lệ. Xin lưu ý rằng việc gửi yêu cầu này sẽ gắn cờ video đó.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.videos.reportAbuse