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
(AutoIt) SharePoint -- Get File PropertySee more SharePoint ExamplesDemonstrates how to get a specific property of a SharePoint file. Any of the following properties can be retrieved:
; This requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. $oHttp = ObjCreate("Chilkat.Http") ; If SharePoint Windows classic authentication is used, then set the ; Login, Password, LoginDomain, and NtlmAuth properties. $oHttp.Login = "SHAREPOINT_USERNAME" $oHttp.Password = "SHAREPOINT_PASSWORD" $oHttp.LoginDomain = "SHAREPOINT_NTLM_DOMAIN" $oHttp.NtlmAuth = True ; 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 $oHttp.Accept = "application/json;odata=verbose" $oHttp.AcceptCharset = "utf-8" ; Get the Author property. Local $sUrl = "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFileByServerRelativeUrl('/Documents/VCAC-document.docx')/Author" Local $sJsonReply = $oHttp.QuickGetStr($sUrl) If ($oHttp.LastMethodSuccess <> True) Then ConsoleWrite($oHttp.LastErrorText & @CRLF) Exit EndIf $oJson = ObjCreate("Chilkat.JsonObject") $oJson.Load($sJsonReply) $oJson.EmitCompact = False ; Make sure it was a success response, and that we really have metadata. ; If it was an error response, then the JSON is error information.. If ($oHttp.LastStatus <> 200) Then ConsoleWrite($oJson.Emit() & @CRLF) ConsoleWrite("Failed." & @CRLF) Exit EndIf ConsoleWrite($oJson.Emit() & @CRLF) ; The Author property returns JSON looking like this: ; { ; "d": { ; "__metadata": { ; "id": "Web/GetUserById(18)", ; "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/Web/GetUserById(18)", ; "type": "SP.User" ; }, ; "Groups": { ; "__deferred": { ; "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/Web/GetUserById(18)/Groups" ; } ; }, ; "Id": 18, ; "IsHiddenInUI": false, ; "LoginName": "i:0#.w|mydomain\\msmith", ; "Title": "Mike Smith", ; "PrincipalType": 1, ; "Email": "msmith@mydomain.com", ; "IsSiteAdmin": false, ; "UserId": { ; "__metadata": { ; "type": "SP.UserIdInfo" ; }, ; "NameId": "s-1-5-21-3433503314-2897774614-343593928-1137", ; "NameIdIssuer": "urn:office:idp:activedirectory" ; } ; } ; } ; ; Get the Title and Email: ConsoleWrite("----" & @CRLF) ConsoleWrite("Title: " & $oJson.StringOf("d.Title") & @CRLF) ConsoleWrite("Email: " & $oJson.StringOf("d.Email") & @CRLF) ConsoleWrite("----" & @CRLF) ; -------------------------------------------------------------------- ; Get the Versions property. $sUrl = "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFileByServerRelativeUrl('/Documents/VCAC-document.docx')/Versions" $sJsonReply = $oHttp.QuickGetStr($sUrl) If ($oHttp.LastMethodSuccess <> True) Then ConsoleWrite($oHttp.LastErrorText & @CRLF) Exit EndIf $oJson.Load($sJsonReply) ConsoleWrite($oJson.Emit() & @CRLF) ; The Versions JSON reply looks like this: ; { ; "d": { ; "results": [ ; { ; "__metadata": { ; "id": "a8d025e2-8255-4487-9edb-9e796ab2889c", ; "type": "SP.FileVersion" ; }, ; "CreatedBy": { ; "__deferred": { ; "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/CreatedBy" ; } ; }, ; "CheckInComment": "", ; "Created": "2016-03-15T02:22:26Z", ; "ID": 1, ; "IsCurrentVersion": false, ; "Size": 21082, ; "Url": "_vti_history/1/Documents/VCAC-document.docx", ; "VersionLabel": "0.1" ; }, ; { ; "__metadata": { ; "id": "8ab3eadd-9126-4f65-a2a3-3b0689c592d6", ; "type": "SP.FileVersion" ; }, ; "CreatedBy": { ; "__deferred": { ; "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/CreatedBy" ; } ; }, ; "CheckInComment": "", ; "Created": "2016-03-15T05:28:24Z", ; "ID": 2, ; "IsCurrentVersion": false, ; "Size": 21082, ; "Url": "_vti_history/2/Documents/VCAC-document.docx", ; "VersionLabel": "0.2" ; } ; ] ; } ; } ; ; Get each VersionLabel, Size, and Url... Local $iNumVersions = $oJson.SizeOfArray("d.results") Local $i = 0 While $i < $iNumVersions $oJson.I = $i ConsoleWrite("---- i = " & $i & @CRLF) ConsoleWrite("VersionLabel: " & $oJson.StringOf("d.results[i].VersionLabel") & @CRLF) ConsoleWrite("Url: " & $oJson.StringOf("d.results[i].Url") & @CRLF) ConsoleWrite("Size: " & $oJson.IntOf("d.results[i].Size") & @CRLF) $i = $i + 1 Wend ; The output is: ; ---- i = 0 ; VersionLabel: 0.1 ; Url: _vti_history/1/Documents/VCAC-document.docx ; Size: 21082 ; ---- i = 1 ; VersionLabel: 0.2 ; Url: _vti_history/2/Documents/VCAC-document.docx ; Size: 21082 |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.