SQL Server
SQL Server
HTTP POST x-www-form-urlencoded
Demonstrates how to send a simple URL encoded POST (content-type = x-www-form-urlencoded). Form params are passed in the HTTP request body in x-www-form-urlencoded format.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
-- Important: Do not use nvarchar(max). See the warning about using nvarchar(max).
DECLARE @sTmp0 nvarchar(4000)
DECLARE @success int
SELECT @success = 0
-- This example requires 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
DECLARE @req int
EXEC @hr = sp_OACreate 'Chilkat.HttpRequest', @req OUT
-- Add the request params expected by the server-side:
EXEC sp_OAMethod @req, 'AddParam', NULL, 'city', 'Paris'
EXEC sp_OAMethod @req, 'AddParam', NULL, 'country', 'France'
-- Send the POST
EXEC sp_OASetProperty @req, 'HttpVerb', 'POST'
EXEC sp_OASetProperty @req, 'ContentType', 'application/x-www-form-urlencoded'
DECLARE @resp int
EXEC @hr = sp_OACreate 'Chilkat.HttpResponse', @resp OUT
EXEC sp_OAMethod @http, 'HttpReq', @success OUT, 'http://www.chilkatsoft.com/httpTest/cityCountry.asp', @req, @resp
IF @success = 0
BEGIN
EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
PRINT @sTmp0
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @req
EXEC @hr = sp_OADestroy @resp
RETURN
END
-- The exact HTTP request sent and response received
-- by the example code above is as follows:
--
-- ---- Sending ----
-- POST /httpTest/cityCountry.asp HTTP/1.1
-- Host: www.chilkatsoft.com
-- Content-Type: application/x-www-form-urlencoded
-- Content-Length: 25
--
-- city=Paris&country=France
-- ---- Received ----
-- HTTP/1.1 200 OK
-- Date: Wed, 09 Dec 2009 16:16:00 GMT
-- Server: Microsoft-IIS/6.0
-- X-Powered-By: ASP.NET
-- Content-Length: 156
-- Content-Type: text/html
-- Set-Cookie: ASPSESSIONIDQCDTSSAC=MHJCNFMDENFOKGINOFEDILCM; path=/
-- Cache-control: private
--
--
-- <html>
-- <head>
-- <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
-- </head>
-- <body>
--
-- France<br />Paris<br />
--
-- </body>
-- </html>
EXEC @hr = sp_OADestroy @http
EXEC @hr = sp_OADestroy @req
EXEC @hr = sp_OADestroy @resp
END
GO