SQL Server
SQL Server
HTTP Session Logging
Demonstrates how to use the SessionLogFilename property to log HTTP requests and responses to a file.Chilkat SQL Server Downloads
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
DECLARE @hr int
DECLARE @iTmp0 int
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
-- This example assumes the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
DECLARE @http int
EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
IF @hr <> 0
BEGIN
PRINT 'Failed to create ActiveX component'
RETURN
END
-- Set the SessionLogFilename property so that the Chilkat HTTP component
-- logs the exact HTTP requests and responses to a file.
-- The SessionLogFilename may be used with any of the HTTP
-- methods for sending GET, POST, PUT, DELETE, HEAD, etc.
EXEC sp_OASetProperty @http, 'SessionLogFilename', 'c:/temp/httpSessionLog.txt'
-- Try a simple HTTP GET and then examine the session log:
DECLARE @html nvarchar(4000)
EXEC sp_OAMethod @http, 'QuickGetStr', @html OUT, 'http://www.chilkatsoft.com/httpTest/abc.html'
EXEC sp_OAGetProperty @http, 'LastMethodSuccess', @iTmp0 OUT
IF @iTmp0 <> 1
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @http
RETURN
END
-- The contents of the session log file after doing
-- the GET request:
-- ---- Sending ----
-- GET /httpTest/abc.html HTTP/1.1
-- Accept: */*
-- Accept-Encoding: gzip
-- Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
-- Accept-Language: en-us,en;q=0.5
-- Host: www.chilkatsoft.com
-- Connection: Keep-Alive
--
--
-- ---- Received ----
-- HTTP/1.1 200 OK
-- Content-Length: 37
-- Content-Type: text/html
-- Last-Modified: Wed, 09 Dec 2009 14:55:08 GMT
-- Accept-Ranges: bytes
-- ETag: "4eecd499df78ca1:28b"
-- Server: Microsoft-IIS/6.0
-- X-Powered-By: ASP.NET
-- Date: Wed, 09 Dec 2009 15:15:50 GMT
--
-- <html>
-- <body>
-- ABC
-- </body>
-- </html>
--
EXEC @hr = sp_OADestroy @http
END
GO