sqlserver使用存儲過程發送http請求


本文主要向大家介紹了SQLServer數據庫訪問發送Http請求,通過具體的內容向大家展現,希望對大家學習SQLServer數據庫有所幫助。

-- 通用讀取獲取數據存儲過程

--開啟Sql Server 通訊配置--

sp_configure 'show advanced options', 1;

GO

RECONFIGURE;

GO

sp_configure 'Ole Automation Procedures', 1;

GO

RECONFIGURE;

GO

EXEC sp_configure 'Ole Automation Procedures';

GO

 

/*

參數說明?

@URL=http請求地址

@status=狀態代?

@returnText=返回?

@object=對象令牌

@errSrc=錯誤源編?

*/

CREATE PROCEDURE P_GET_HttpRequestData(

@URL varchar(500),

@status int=0 OUT,

@returnText varchar(2000)='' OUT

)

AS

BEGIN

DECLARE @object int,

@errSrc int

/*初始化對*/

EXEC @status = SP_OACreate 'Msxml2.ServerXMLHTTP.3.0', @object OUT

IF @status <> 0

BEGIN

 EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

 RETURN

END

 

/*創建鏈接*/

EXEC @status= SP_OAMethod @object,'open',NULL,'GET',@URL

IF @status <> 0

BEGIN

 EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

 RETURN

END

EXEC @status=SP_OAMethod @object,'setRequestHeader','Content-Type','application/x-www-form-urlencoded'

/*發起請求*/

EXEC @status= SP_OAMethod @object,'send',NULL 

IF @status <> 0 

BEGIN 

 EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

 RETURN

END

     

/*獲取返回*/

EXEC @status= SP_OAGetProperty @object,'responseText',@returnText OUT

IF @status <> 0 

BEGIN 

 EXEC SP_OAGetErrorInfo @object, @errSrc OUT, @returnText OUT

 RETURN

END

END;

 

 

----測試

CREATE PROCEDURE IPCC_WEBSERVICE_PACKID(@parametersStr VARCHAR(255),@outText VARCHAR(255) OUT)

AS

BEGIN

  DECLARE @returnText VARCHAR(500)

  DECLARE @status int

  DECLARE @urlStr VARCHAR(255)

  SET @urlStr = 'http://172.17.5.14:9090/df/sendDataToIVR.action?parametersStr='+@parametersStr+'&ifaceType=4';

EXEC P_GET_HttpRequestData    @urlStr, @status OUTPUT,@returnText   OUTPUT;

   SET @outText = @returnText;

   print @outText ; ---打印

END;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM