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
(Visual FoxPro) SharePoint -- Update the Contents of a File (PUT)Demonstrates how to update the contents of a SharePoint file.
LOCAL loHttp LOCAL loReq LOCAL lnBUseTls LOCAL loResp LOCAL loJson * This requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http') loHttp = CreateObject('Chilkat.Http') * If SharePoint Windows classic authentication is used, then set the * Login, Password, LoginDomain, and NtlmAuth properties. loHttp.Login = "SHAREPOINT_USERNAME" loHttp.Password = "SHAREPOINT_PASSWORD" loHttp.LoginDomain = "SHAREPOINT_NTLM_DOMAIN" loHttp.NtlmAuth = 1 * The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie). * If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead * establish the cookie as shown at SharePoint Online Authentication * Indicate that we want a JSON reply loHttp.Accept = "application/json;odata=verbose" * Update /Documents/ChilkatTest/sample.docx with new content... * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.HttpRequest') loReq = CreateObject('Chilkat.HttpRequest') loReq.HttpVerb = "POST" loReq.Path = "/_api/web/GetFileByServerRelativeUrl('/Documents/ChilkatTest/sample.docx')/$value" * Give the location of the file to be uploaded. * Note: The file is not loaded into memory at this point. It is never fully loaded * into memory. Instead, the file data is streamed directly from the file when * when the upload occurs. loReq.StreamBodyFromFile("qa_data/msword/sample.docx") * We need to add a form digest value in the X-RequestDigest header field. * See this example for details on * how to get (and cache) a form digest value loReq.AddHeader("X-RequestDigest","SHAREPOINT_FORM_DIGEST") * Also need to add this header.. loReq.AddHeader("X-HTTP-Method","PUT") * Upload.. lnBUseTls = 1 loResp = loHttp.SynchronousRequest("SHAREPOINT_HTTPS_DOMAIN",443,lnBUseTls,loReq) IF (loHttp.LastMethodSuccess <> 1) THEN ? loHttp.LastErrorText RELEASE loHttp RELEASE loReq CANCEL ENDIF * A successful update will return a 204 status code with an empty body. * A non-successful update will return a JSON response body.. IF (loResp.StatusCode <> 204) THEN ? "Response status code = " + STR(loResp.StatusCode) * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJson = CreateObject('Chilkat.JsonObject') loJson.Load(loResp.BodyStr) loJson.EmitCompact = 0 ? loJson.Emit() ? "Failed" RELEASE loResp RELEASE loHttp RELEASE loReq RELEASE loJson CANCEL ENDIF RELEASE loResp ? "Success." RELEASE loHttp RELEASE loReq RELEASE loJson |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.