Nhận xét là ý kiến phản hồi do người dùng cung cấp về một tệp, chẳng hạn như trình đọc tài liệu xử lý văn bản đề xuất cách diễn đạt lại một câu. Có hai loại nhận xét: nhận xét được liên kết và nhận xét không được liên kết. Chú thích được neo được liên kết với một vị trí cụ thể, chẳng hạn như một câu trong tài liệu xử lý văn bản, trong một phiên bản cụ thể của tài liệu. Ngược lại, một nhận xét không liên kết chỉ được liên kết với tài liệu.
Phản hồi được đính kèm vào bình luận và thể hiện phản hồi của người dùng đối với bình luận đó. API Drive cho phép người dùng thêm nhận xét và phản hồi vào tài liệu do ứng dụng của bạn tạo. Nhìn chung, một nhận xét có phản hồi được gọi là cuộc thảo luận.
Bạn phải đặt tham số fields
để liệt kê các trường cần trả về trong phản hồi khi gọi mọi phương thức được liệt kê trên tài nguyên comments
. Nếu bạn bỏ qua tham số này, phương thức sẽ trả về lỗi. Để trả về chính xác các trường bạn cần, hãy xem phần Trả về các trường cụ thể.
Thêm bình luận không liên kết
Để thêm một nhận xét không liên kết vào tài liệu, hãy gọi phương thức create()
bằng tham số fileId
và tài nguyên comments
chứa nhận xét.
Chú thích được chèn dưới dạng văn bản thuần tuý, nhưng nội dung phản hồi cung cấp một trường htmlContent
chứa nội dung được định dạng để hiển thị.
Thêm câu trả lời cho một bình luận
Để thêm một câu trả lời cho một bình luận, hãy sử dụng phương thức replies.create()
trên tài nguyên replies
với các tham số fileId
và commentId
. Nội dung yêu cầu sử dụng trường content
để thêm nội dung trả lời.
Nội dung trả lời được chèn dưới dạng văn bản thuần tuý, nhưng nội dung phản hồi cung cấp một trường htmlContent
chứa nội dung được định dạng để hiển thị.
Phương thức này trả về các trường được liệt kê trong trường fields
.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp các tham số đường dẫn fileId
và commentId
cũng như nhiều trường.
POST https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID/replies?fields=id,comment
Nội dung yêu cầu
{ "content": "This is a reply to a comment." }
Giải quyết nhận xét
Bạn chỉ có thể giải quyết một bình luận bằng cách đăng nội dung trả lời bình luận đó.
Để giải quyết một nhận xét, hãy sử dụng phương thức replies.create()
trên tài nguyên replies
với các tham số fileId
và commentId
.
Nội dung yêu cầu sử dụng trường action
để phân giải nhận xét. Bạn cũng có thể đặt trường content
để thêm một câu trả lời đóng bình luận.
Khi một nhận xét được giải quyết, Drive sẽ đánh dấu tài nguyên nhận xét đó là resolved: true
. Không giống như bình luận đã xoá, bình luận đã giải quyết có thể bao gồm các trường htmlContent
hoặc content
.
Khi ứng dụng của bạn giải quyết một bình luận, giao diện người dùng sẽ cho biết rằng bình luận đó đã được xử lý. Ví dụ: ứng dụng của bạn có thể:
- Không cho phép trả lời thêm và làm mờ tất cả các câu trả lời trước đó cùng với bình luận ban đầu.
- Ẩn nhận xét đã giải quyết.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp các tham số đường dẫn fileId
và commentId
cũng như nhiều trường.
POST https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID/replies?fields=id,comment
Nội dung yêu cầu
{ "action": "resolve", "content": "This comment has been resolved." }
Thêm nhận xét được liên kết vào bản sửa đổi mới nhất của tài liệu
Khi thêm nhận xét, bạn có thể liên kết nhận xét đó với một vùng trong tệp. Neo xác định bản sửa đổi tệp và vùng trong tệp mà nhận xét tham chiếu đến. Tài nguyên comments
xác định trường anchor
dưới dạng chuỗi JSON.
Cách thêm bình luận được liên kết:
(Tùy chọn). Gọi phương thức
revisions.list()
để liệt kê mọirevisionID
cho một tài liệu. Chỉ làm theo bước này nếu bạn muốn liên kết một bình luận với bất kỳ bản sửa đổi nào khác ngoài bản sửa đổi mới nhất. Nếu bạn muốn sử dụng bản sửa đổi mới nhất, hãy sử dụnghead
chorevisionID
.Gọi phương thức
create()
bằng tham sốfileID
, tài nguyêncomments
chứa nhận xét và chuỗi neo JSON chứarevisionID
(r
) và vùng (a
).
Cách bạn xác định một vùng phụ thuộc vào loại nội dung tài liệu mà bạn đang xử lý. Để biết thêm thông tin, hãy tham khảo bài viết Xác định khu vực.
Xác định khu vực
Như đã đề cập trước đó, chuỗi neo JSON chứa revisionID
(r
) và vùng (a
). Vùng (a
) là một mảng JSON chứa các thuật toán phân loại vùng chỉ định định dạng và vị trí neo một nhận xét. Một thuật toán phân loại có thể là một hình chữ nhật hai chiều cho hình ảnh, một dòng văn bản trong tài liệu hoặc một khoảng thời gian trong video. Để xác định một khu vực, hãy chọn trình phân loại khu vực khớp với loại nội dung mà bạn đang cố gắng liên kết. Ví dụ: nếu nội dung của bạn là văn bản, bạn có thể sẽ sử dụng bộ phân loại khu vực txt
hoặc line
.
Để biết danh sách các thuật toán phân loại khu vực trong API Drive, hãy tham khảo phần Thuật toán phân loại khu vực.
Ví dụ sau đây cho thấy một chuỗi neo JSON liên kết các nhận xét với các dòng trong hai khu vực riêng biệt của một tài liệu:
- Khu vực đầu tiên bắt đầu từ dòng 12 (
'n':12
) và kéo dài trong 3 dòng ('l':3
). - Khu vực thứ hai chỉ bao gồm dòng 18 (
'n':18, 'l':1
`).
{
'r': 'REVISION_ID',
'a': [
{
'line':
{
'n': 12,
'l': 3,
}
},
{
'line':
{
'n': 18,
'l': 1,
}
}]
}
Thay thế REVISION_ID bằng head
hoặc mã nhận dạng của một bản sửa đổi cụ thể.
Nhận bình luận
Để nhận nhận xét về một tệp, hãy sử dụng phương thức get()
trên tài nguyên comments
với các tham số fileId
và commentId
. Nếu không biết mã nhận xét, bạn có thể liệt kê tất cả nhận xét bằng phương thức list()
.
Phương thức này trả về một thực thể của tài nguyên comments
.
Để đưa các nhận xét đã bị xoá vào kết quả, hãy đặt tham số truy vấn includedDeleted
thành true
.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp các tham số đường dẫn fileId
và commentId
cũng như nhiều trường.
GET https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID?fields=id,comment,modifiedTime,resolved
Liệt kê bình luận
Để liệt kê các nhận xét trên một tệp, hãy sử dụng phương thức list()
trên tài nguyên comments
với tham số fileId
. Phương thức này trả về danh sách các nhận xét.
Truyền các thông số truy vấn sau để tuỳ chỉnh tính năng phân trang hoặc lọc nhận xét:
includeDeleted
: Đặt thànhtrue
để bao gồm cả bình luận đã xoá. Các nhận xét đã xoá không bao gồm trườnghtmlContent
hoặccontent
.pageSize
: Số bình luận tối đa được trả về trên mỗi trang.pageToken
: Mã thông báo trang, nhận được từ một lệnh gọi danh sách trước đó. Cung cấp mã thông báo này để truy xuất trang tiếp theo.startModifiedTime
: Giá trị tối thiểu của trườngmodifiedTime
cho chú thích kết quả.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp tham số đường dẫn fileId
, tham số truy vấn includeDeleted
và nhiều trường.
GET https://www.googleapis.com/drive/v3/files/FILE_ID/comments?includeDeleted=true&fields=(id,comment,kind,modifiedTime,resolved)
Cập nhật bình luận
Để cập nhật nhận xét về một tệp, hãy sử dụng phương thức update()
trên tài nguyên comments
với các tham số fileId
và commentId
. Nội dung yêu cầu sử dụng trường content
để cập nhật bình luận.
Phương thức này trả về các trường được liệt kê trong tham số truy vấn fields
.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp các tham số đường dẫn fileId
và commentId
cũng như nhiều trường.
PATCH https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID?fields=id,comment
Nội dung yêu cầu
{ "content": "This comment is now updated." }
Xóa nhận xét
Để xoá một nhận xét trên tệp, hãy sử dụng phương thức delete()
trên tài nguyên comments
với các tham số fileId
và commentId
.
Khi một bình luận bị xoá, Drive sẽ đánh dấu tài nguyên bình luận đó là deleted: true
. Các bình luận đã xoá không bao gồm trường htmlContent
hoặc content
.
Hiển thị ví dụ
Yêu cầu
Trong ví dụ này, chúng ta cung cấp các tham số đường dẫn fileId
và commentId
.
DELETE https://www.googleapis.com/drive/v3/files/FILE_ID/comments/COMMENT_ID