Creates a new comment on a file. The file is specified by file ID. This example creates a comment on the file having id = "0B5drHSd5ZHwgc3RhcnRlcl9maWxlX2Rhc2hlclYw".
load ./chilkat.dll
set rest [new_CkRest]
# Provide a previously obtained OAuth2 access token.
set oauth2 [new_CkOAuth2]
CkOAuth2_put_AccessToken $oauth2 "OAUTH2_ACCESS_TOKEN"
CkRest_SetAuthOAuth2 $rest $oauth2
set success [CkRest_Connect $rest "www.googleapis.com" 443 1 1]
if {[expr $success != 1]} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
delete_CkOAuth2 $oauth2
exit
}
CkRest_AddQueryParam $rest "fields" "author,content"
# The following code creates the JSON request body.
# The JSON created by this code is shown below.
set jsonReq [new_CkJsonObject]
CkJsonObject_UpdateString $jsonReq "content" "This is a test comment about this file..."
set sbReq [new_CkStringBuilder]
CkJsonObject_EmitSb $jsonReq $sbReq
CkRest_AddHeader $rest "Content-Type" "application/json"
set sbJson [new_CkStringBuilder]
set success [CkRest_FullRequestSb $rest "POST" "/drive/v3/files/0B5drHSd5ZHwgc3RhcnRlcl9maWxlX2Rhc2hlclYw/comments" $sbReq $sbJson]
if {[expr $success != 1]} then {
puts [CkRest_lastErrorText $rest]
delete_CkRest $rest
delete_CkOAuth2 $oauth2
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
exit
}
if {[expr [CkRest_ResponseStatusCode $rest] != 200]} then {
puts "Received error response code: [CkRest_ResponseStatusCode $rest]"
puts "Response body:"
puts [CkStringBuilder_getAsString $sbJson]
delete_CkRest $rest
delete_CkOAuth2 $oauth2
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
exit
}
set json [new_CkJsonObject]
CkJsonObject_LoadSb $json $sbJson
# The following code parses the JSON response.
# A sample JSON response is shown below the sample code.
set authorKind [CkJsonObject_stringOf $json "author.kind"]
set authorDisplayName [CkJsonObject_stringOf $json "author.displayName"]
set authorPhotoLink [CkJsonObject_stringOf $json "author.photoLink"]
set authorMe [CkJsonObject_BoolOf $json "author.me"]
set content [CkJsonObject_stringOf $json "content"]
puts "Example Completed."
delete_CkRest $rest
delete_CkOAuth2 $oauth2
delete_CkJsonObject $jsonReq
delete_CkStringBuilder $sbReq
delete_CkStringBuilder $sbJson
delete_CkJsonObject $json
{
"content": "This is a test comment about this file..."
}
{
"author": {
"kind": "drive#user",
"displayName": "Matt Fausey",
"photoLink": "//ssl.gstatic.com/s2/profiles/images/silhouette96.png",
"me": true
},
"content": "This is a test comment about this file..."
}