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".
integer li_rc
oleobject loo_Rest
integer li_Success
oleobject loo_Oauth2
oleobject loo_JsonReq
oleobject loo_SbReq
oleobject loo_SbJson
oleobject loo_Json
string ls_AuthorKind
string ls_AuthorDisplayName
string ls_AuthorPhotoLink
integer li_AuthorMe
string ls_Content
loo_Rest = create oleobject
li_rc = loo_Rest.ConnectToNewObject("Chilkat_9_5_0.Rest")
if li_rc < 0 then
destroy loo_Rest
MessageBox("Error","Connecting to COM object failed")
return
end if
// Provide a previously obtained OAuth2 access token.
loo_Oauth2 = create oleobject
li_rc = loo_Oauth2.ConnectToNewObject("Chilkat_9_5_0.OAuth2")
loo_Oauth2.AccessToken = "OAUTH2_ACCESS_TOKEN"
loo_Rest.SetAuthOAuth2(loo_Oauth2)
li_Success = loo_Rest.Connect("www.googleapis.com",443,1,1)
if li_Success <> 1 then
Write-Debug loo_Rest.LastErrorText
destroy loo_Rest
destroy loo_Oauth2
return
end if
loo_Rest.AddQueryParam("fields","author,content")
// The following code creates the JSON request body.
// The JSON created by this code is shown below.
loo_JsonReq = create oleobject
li_rc = loo_JsonReq.ConnectToNewObject("Chilkat_9_5_0.JsonObject")
loo_JsonReq.UpdateString("content","This is a test comment about this file...")
loo_SbReq = create oleobject
li_rc = loo_SbReq.ConnectToNewObject("Chilkat_9_5_0.StringBuilder")
loo_JsonReq.EmitSb(loo_SbReq)
loo_Rest.AddHeader("Content-Type","application/json")
loo_SbJson = create oleobject
li_rc = loo_SbJson.ConnectToNewObject("Chilkat_9_5_0.StringBuilder")
li_Success = loo_Rest.FullRequestSb("POST","/drive/v3/files/0B5drHSd5ZHwgc3RhcnRlcl9maWxlX2Rhc2hlclYw/comments",loo_SbReq,loo_SbJson)
if li_Success <> 1 then
Write-Debug loo_Rest.LastErrorText
destroy loo_Rest
destroy loo_Oauth2
destroy loo_JsonReq
destroy loo_SbReq
destroy loo_SbJson
return
end if
if loo_Rest.ResponseStatusCode <> 200 then
Write-Debug "Received error response code: " + string(loo_Rest.ResponseStatusCode)
Write-Debug "Response body:"
Write-Debug loo_SbJson.GetAsString()
destroy loo_Rest
destroy loo_Oauth2
destroy loo_JsonReq
destroy loo_SbReq
destroy loo_SbJson
return
end if
loo_Json = create oleobject
li_rc = loo_Json.ConnectToNewObject("Chilkat_9_5_0.JsonObject")
loo_Json.LoadSb(loo_SbJson)
// The following code parses the JSON response.
// A sample JSON response is shown below the sample code.
ls_AuthorKind = loo_Json.StringOf("author.kind")
ls_AuthorDisplayName = loo_Json.StringOf("author.displayName")
ls_AuthorPhotoLink = loo_Json.StringOf("author.photoLink")
li_AuthorMe = loo_Json.BoolOf("author.me")
ls_Content = loo_Json.StringOf("content")
Write-Debug "Example Completed."
destroy loo_Rest
destroy loo_Oauth2
destroy loo_JsonReq
destroy loo_SbReq
destroy loo_SbJson
destroy loo_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..."
}