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
(DataFlex) WebDAV PROPFINDDemonstrates how to send a WebDAV PROPFIND HTTP request.
Use ChilkatAx-win32.pkg Procedure Test Variant vReq Handle hoReq Handle hoHttp Boolean iSuccess String sXmlBody Variant vResp Handle hoResp String sResponseXml Integer iStatusCode String sTemp1 Boolean bTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatHttpRequest)) To hoReq If (Not(IsComObjectCreated(hoReq))) Begin Send CreateComObject of hoReq End Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // The PROPFIND request to be sent will look similar to this: // This is from RFC 4918 at http://tools.ietf.org/html/rfc4918#section-9.1.3 // PROPFIND /file HTTP/1.1 // Host: www.example.com // Content-type: application/xml; charset="utf-8" // Content-Length: xxxx // // <?xml version="1.0" encoding="utf-8" ?> // <D:propfind xmlns:D="DAV:"> // <D:prop xmlns:R="http://ns.example.com/boxschema/"> // <R:bigbox/> // <R:author/> // <R:DingALing/> // <R:Random/> // </D:prop> // </D:propfind> // Build the HTTP request object. // The HTTP verb should be "PROPFIND" Set ComHttpVerb Of hoReq To "PROPFIND" // The Content-Type should be "application/xml", and // the charset attribute in the Content-Type header should // be utf-8: Set ComContentType Of hoReq To "application/xml" Set ComCharset Of hoReq To "utf-8" Set ComSendCharset Of hoReq To True // Load the request body with the XML. Your application // is free to construct the XML using any means desired. // Once the XML is prepared, load it into the request body // like this: Move "This is the string that should contain the XML body..." To sXmlBody Get ComLoadBodyFromString Of hoReq sXmlBody "utf-8" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoReq To sTemp1 Showln sTemp1 Procedure_Return End // For this example, pretend the WEBDAV endpoint is: // https://webdav.chilkatstorage.com/ // Note: There is no actual "chilkatstorage.com" site. // This is only an example... // The "path" part of this endpoint URL is simply "/". // Send the request to the WebDAV endpoint using // the SynchronousRequest method: Get pvComObject of hoReq to vReq Get ComSynchronousRequest Of hoHttp "webdav.chilkatstorage.com" 443 True vReq To vResp If (IsComObject(vResp)) Begin Get Create (RefClass(cComChilkatHttpResponse)) To hoResp Set pvComObject Of hoResp To vResp End Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End // Get the XML response: Get ComBodyStr Of hoResp To sResponseXml Showln "XML Response: " sResponseXml // Get the response status code, such as 207 Get ComStatusCode Of hoResp To iStatusCode Showln "StatusCode = " iStatusCode Send Destroy of hoResp End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.