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
(PowerShell) Upload Media for Google PhotosDemonstrates how to upload a media file (such as a JPG image) that will be placed in a Google Photos album. Uploading is a two-step process:
This example shows step 1.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. # Get the previously obtained access token. # See Get Google Photos Access Token. $jsonToken = New-Object Chilkat.JsonObject $success = $jsonToken.LoadFile("qa_data/tokens/googlePhotos.json") if ($success -eq $false) { $($jsonToken.LastErrorText) exit } $http = New-Object Chilkat.Http $http.AuthToken = $jsonToken.StringOf("access_token") # This is the HTTPS POST we'll be sending: # POST https://photoslibrary.googleapis.com/v1/uploads # Authorization: Bearer OAUTH2_TOKEN # Content-type: application/octet-stream # X-Goog-Upload-File-Name: FILENAME # X-Goog-Upload-Protocol: raw $http.SetRequestHeader("X-Goog-Upload-File-Name","penguins.jpg") $http.SetRequestHeader("X-Goog-Upload-Protocol","raw") # Assuming the media isn't super large, we'll just read it into memory and send. # (Another example exists for streaming a large media file directly from the filesystem.) # Load the media file into memory. $bdMedia = New-Object Chilkat.BinData $success = $bdMedia.LoadFile("qa_data/jpg/penguins.jpg") $url = "https://photoslibrary.googleapis.com/v1/uploads" $resp = $http.PBinaryBd("POST",$url,$bdMedia,"application/octet-stream",$false,$false) if ($http.LastMethodSuccess -eq $false) { $($http.LastErrorText) exit } # Examine the response status code. Success is indicated by a status code of 200. $("response status code: " + $resp.StatusCode) # Show the response body. if ($resp.StatusCode -eq 200) { # Success. $("Upload token: " + $resp.BodyStr) } else { $("Error:") $($resp.BodyStr) } # Clear headers such as X-Goog-Upload-File-Name for subsequent HTTP requests sent on this object.. $http.ClearHeaders() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.