Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) Google Drive Multipart Upload StringDemonstrates a file upload to Google Drive where the contents of the file are contained in a string variable.
load ./chilkat.dll # This example will upload a file to Google Drive. set success 1 # It requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set gAuth [new_CkAuthGoogle] CkAuthGoogle_put_Scope $gAuth "https://www.googleapis.com/auth/drive" CkAuthGoogle_put_SubEmailAddress $gAuth "some.user@example.com" CkAuthGoogle_put_ExpireNumSeconds $gAuth 3600 # Obtain an access token as shown in one of the following examples: # See Get Access Token using a Service Account JSON Key # See Get Access Token using a P12 File set rest [new_CkRest] # Connect using TLS. set bAutoReconnect 1 set success [CkRest_Connect $rest "www.googleapis.com" 443 1 $bAutoReconnect] # Provide the authentication credentials (i.e. the access key) set success [CkRest_SetAuthGoogle $rest $gAuth] # A multipart upload to Google Drive needs a multipart/related Content-Type set success [CkRest_AddHeader $rest "Content-Type" "multipart/related"] # Specify each part of the request. # The 1st part is JSON with information about the file. CkRest_put_PartSelector $rest "1" set success [CkRest_AddHeader $rest "Content-Type" "application/json; charset=UTF-8"] set json [new_CkJsonObject] set success [CkJsonObject_AddStringAt $json -1 "title" "helloWorld.txt"] set success [CkJsonObject_AddStringAt $json -1 "description" "A simple text file that says Hello World."] set success [CkJsonObject_AddStringAt $json -1 "mimeType" "text/plain"] set success [CkRest_SetMultipartBodyString $rest [CkJsonObject_emit $json]] # The 2nd part is the file content. # In this case, we'll upload a simple text file containing "Hello World!" CkRest_put_PartSelector $rest "2" set success [CkRest_AddHeader $rest "Content-Type" "text/plain"] set success [CkRest_SetMultipartBodyString $rest "Hello World!"] # POST https://www.googleapis.com/upload/drive/v2/files set jsonResponse [CkRest_fullRequestMultipart $rest "POST" "/upload/drive/v2/files?uploadType=multipart"] if {[CkRest_get_LastMethodSuccess $rest] != 1} then { puts [CkRest_lastErrorText $rest] delete_CkAuthGoogle $gAuth delete_CkRest $rest delete_CkJsonObject $json exit } # Show the JSON response. puts "Response Status Code: [CkRest_get_ResponseStatusCode $rest]" puts "Json Response: $jsonResponse" delete_CkAuthGoogle $gAuth delete_CkRest $rest delete_CkJsonObject $json |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.