Sql server

Generate Http post Request From sql server

Generate Http post Request From sql server

CREATE procedure HTTP_POST(
 @sUrl varchar(200),
 @response varchar(8000) out) As Declare @obj int ,@
hr int ,@status int ,
@msg varchar(255)
exec @hr = sp_OACreate ‘MSXML2.ServerXMLHttp’,
@obj OUT — exec @hr = sp_OACreate ‘MSXML2.ServerXMLHttp’,
@obj OUT if @hr <> 0
begin
Raiserror(‘sp_OACreate MSXML2.ServerXMLHttp.3.0 failed’, 16,1)
return
end
exec @hr = sp_OAMethod @obj, ‘open’, NULL, ‘POST’, @sUrl, false if @hr <>0 begin set @msg = ‘sp_OAMethod Open failed’ goto eh end
exec @hr = sp_OAMethod @obj, ‘setRequestHeader’, NULL, ‘Content-Type’, ‘application/x-www-form-urlencoded’ if @hr <>0 begin set @msg = ‘sp_OAMethod setRequestHeader failed’ goto eh end
exec @hr = sp_OAMethod @obj, send, NULL, ” if @hr <>0 begin set @msg = ‘sp_OAMethod Send failed’ goto eh end
exec @hr = sp_OAGetProperty @obj, ‘status’, @status OUT if @hr <>0 begin set @msg = ‘sp_OAMethod read status failed’ goto eh end if @status <> 200 begin set @msg = ‘sp_OAMethod http status ‘ + str(@status) goto eh end
exec @hr = sp_OAGetProperty @obj, ‘responseText’, @response OUT if @hr <>0 begin set @msg = ‘sp_OAMethod read response failed’ goto eh end
exec @hr = sp_OADestroy @obj return eh: exec @hr = sp_OADestroy @obj Raiserror(@msg, 16, 1) return GO

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.