Visual FoxPro
Visual FoxPro
Initiate Resumable Upload Session
See more Google Cloud Storage Examples
Initiate a Google Cloud Storage resumable upload session..Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loHttp
LOCAL loJsonToken
LOCAL loJsonMetaData
LOCAL lcUrl
LOCAL loResp
LOCAL lnStatusCode
LOCAL lcSessionUrl
lnSuccess = 0
* This example assumes the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loHttp = CreateObject('Chilkat.Http')
loJsonToken = CreateObject('Chilkat.JsonObject')
lnSuccess = loJsonToken.LoadFile("qa_data/tokens/googleCloudStorage.json")
IF (lnSuccess = 0) THEN
? loJsonToken.LastErrorText
RELEASE loHttp
RELEASE loJsonToken
CANCEL
ENDIF
loJsonMetaData = CreateObject('Chilkat.JsonObject')
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('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpJson("POST",lcUrl,loJsonMetaData,"application/json",loResp)
IF (lnSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loHttp
RELEASE loJsonToken
RELEASE loJsonMetaData
RELEASE loResp
CANCEL
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