Lists the comment on a file. The file is specified by file ID. This example lists comments on the file having id = "0B5drHSd5ZHwgc3RhcnRlcl9maWxlX2Rhc2hlclYw".
func chilkatTest() {
let rest = CkoRest()
var success: Bool
// Provide a previously obtained OAuth2 access token.
let oauth2 = CkoOAuth2()
oauth2.AccessToken = "OAUTH2_ACCESS_TOKEN"
rest.SetAuthOAuth2(oauth2)
success = rest.Connect("www.googleapis.com", port: 443, tls: true, autoReconnect: true)
if success != true {
print("\(rest.LastErrorText)")
return
}
rest.AddQueryParam("fields", value: "comments")
let sbJson = CkoStringBuilder()
success = rest.FullRequestNoBodySb("GET", uriPath: "/drive/v3/files/0B5drHSd5ZHwgc3RhcnRlcl9maWxlX2Rhc2hlclYw/comments", sb: sbJson)
if success != true {
print("\(rest.LastErrorText)")
return
}
if rest.ResponseStatusCode.integerValue != 200 {
print("Received error response code: \(rest.ResponseStatusCode.integerValue)")
print("Response body:")
print("\(sbJson.GetAsString())")
return
}
let json = CkoJsonObject()
json.LoadSb(sbJson)
// The following code parses the JSON response.
// A sample JSON response is shown below the sample code.
var i: Int
var count_i: Int
var kind: String?
var id: String?
var createdTime: String?
var modifiedTime: String?
var authorKind: String?
var authorDisplayName: String?
var authorPhotoLink: String?
var authorMe: Bool
var htmlContent: String?
var content: String?
var deleted: Bool
var resolved: Bool
var j: Int
var count_j: Int
var action: String?
i = 0
count_i = json.SizeOfArray("comments").integerValue
while i < count_i {
json.I = i
kind = json.StringOf("comments[i].kind")
id = json.StringOf("comments[i].id")
createdTime = json.StringOf("comments[i].createdTime")
modifiedTime = json.StringOf("comments[i].modifiedTime")
authorKind = json.StringOf("comments[i].author.kind")
authorDisplayName = json.StringOf("comments[i].author.displayName")
authorPhotoLink = json.StringOf("comments[i].author.photoLink")
authorMe = json.BoolOf("comments[i].author.me")
htmlContent = json.StringOf("comments[i].htmlContent")
content = json.StringOf("comments[i].content")
deleted = json.BoolOf("comments[i].deleted")
resolved = json.BoolOf("comments[i].resolved")
j = 0
count_j = json.SizeOfArray("comments[i].replies").integerValue
while j < count_j {
json.J = j
kind = json.StringOf("comments[i].replies[j].kind")
id = json.StringOf("comments[i].replies[j].id")
createdTime = json.StringOf("comments[i].replies[j].createdTime")
modifiedTime = json.StringOf("comments[i].replies[j].modifiedTime")
authorKind = json.StringOf("comments[i].replies[j].author.kind")
authorDisplayName = json.StringOf("comments[i].replies[j].author.displayName")
authorPhotoLink = json.StringOf("comments[i].replies[j].author.photoLink")
authorMe = json.BoolOf("comments[i].replies[j].author.me")
htmlContent = json.StringOf("comments[i].replies[j].htmlContent")
content = json.StringOf("comments[i].replies[j].content")
deleted = json.BoolOf("comments[i].replies[j].deleted")
action = json.StringOf("comments[i].replies[j].action")
j = j + 1
}
i = i + 1
}
print("Example Completed.")
}
{
"comments": [
{
"kind": "drive#comment",
"id": "AAAABg7vWfw",
"createdTime": "2017-11-13T17:51:57.906Z",
"modifiedTime": "2017-11-13T17:51:57.906Z",
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"htmlContent": "This is the 2nd test comment about this file...",
"content": "This is the 2nd test comment about this file...",
"deleted": false,
"resolved": false,
"replies": [
]
},
{
"kind": "drive#comment",
"id": "AAAABg7tSGw",
"createdTime": "2017-11-13T17:43:05.735Z",
"modifiedTime": "2017-11-13T18:25:11.828Z",
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"htmlContent": "This is a test comment about this file...",
"content": "This is a test comment about this file...",
"deleted": false,
"resolved": true,
"replies": [
{
"kind": "drive#reply",
"id": "AAAABg76H9g",
"createdTime": "2017-11-13T18:24:12.782Z",
"modifiedTime": "2017-11-13T18:24:12.782Z",
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"htmlContent": "This is the first reply to a comment.",
"content": "This is the first reply to a comment.",
"deleted": false,
"action": "reopen"
},
{
"kind": "drive#reply",
"id": "AAAABg76H9k",
"createdTime": "2017-11-13T18:24:45.085Z",
"modifiedTime": "2017-11-13T18:24:45.085Z",
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"htmlContent": "This is the second reply to a comment.",
"content": "This is the second reply to a comment.",
"deleted": false,
"action": "resolve"
},
{
"kind": "drive#reply",
"id": "AAAABg76H9o",
"createdTime": "2017-11-13T18:25:11.828Z",
"modifiedTime": "2017-11-13T18:25:11.828Z",
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"htmlContent": "This is the third reply to a comment.",
"content": "This is the third reply to a comment.",
"deleted": false,
"action": "resolve"
}
]
}
]
}