Lianja
Lianja
Initiate Resumable Upload Session
See more Google Cloud Storage Examples
Initiate a Google Cloud Storage resumable upload session..Chilkat Lianja Downloads
llSuccess = .F.
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loHttp = createobject("CkHttp")
loJsonToken = createobject("CkJsonObject")
llSuccess = loJsonToken.LoadFile("qa_data/tokens/googleCloudStorage.json")
if (llSuccess = .F.) then
? loJsonToken.LastErrorText
release loHttp
release loJsonToken
return
endif
loJsonMetaData = createobject("CkJsonObject")
loJsonMetaData.UpdateString("contentType","image/jpeg")
// Adds the "Authorization: Bearer <access_token>" header..
loHttp.AuthToken = loJsonToken.StringOf("access_token")
loHttp.SetUrlVar("bucket_name","chilkat-bucket-b")
loHttp.SetUrlVar("object_name","penguins2.jpg")
lcUrl = "https://storage.googleapis.com/upload/storage/v1/b/{$bucket_name}/o?uploadType=resumable&name={$object_name}"
loResp = createobject("CkHttpResponse")
llSuccess = loHttp.HttpJson("POST",lcUrl,loJsonMetaData,"application/json",loResp)
if (llSuccess = .F.) then
? loHttp.LastErrorText
release loHttp
release loJsonToken
release loJsonMetaData
release loResp
return
endif
lnStatusCode = loResp.StatusCode
? "response status code = " + str(lnStatusCode)
lcSessionUrl = ""
if (lnStatusCode <> 200) then
? loResp.BodyStr
else
// The session URL will be used to upload the file in chunks, in subsequent HTTP POSTs...
lcSessionUrl = loResp.GetHeaderField("Location")
? "Session URL = " + lcSessionUrl
endif
release loHttp
release loJsonToken
release loJsonMetaData
release loResp