SqlServer2000 调用Http接口的存储过程

来源:互联网 发布:淘宝动态评分能改吗 编辑:程序博客网 时间:2024/05/01 02:36

SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO

 


create            Proc        P_HttpGet(@url varchar(2000),
        @ResponseText        varchar(8000) out)
As

DECLARE   @object   int
DECLARE   @hr   int ,
   @Size int
DECLARE   @src   varchar(255),   @desc   varchar(255)
Declare   @tmp   int


--創建Scripting組件實例
EXEC   @hr   =   sp_OACreate   'Microsoft.XMLHTTP',   @object   OUT
IF   @hr   <>   0
BEGIN
        EXEC   sp_OAGetErrorInfo   @object,   @src   OUT,   @desc   OUT  
        SELECT   hr=convert(varbinary(4),@hr),   Source=@src,   Description=@desc
        RETURN
END


-- open
exec @hr=sp_oamethod @object,'open',null, 'GET', @url, 0
IF   @hr   <>   0
BEGIN
        EXEC   sp_OAGetErrorInfo   @object,   @src   OUT,   @desc   OUT  
        SELECT   hr=convert(varbinary(4),@hr),   Source=@src,   Description=@desc
        RETURN
END
 
-- send
exec @hr=sp_oamethod @object,'send',null,@ResponseText out
IF   @hr   <>   0
BEGIN
        EXEC   sp_OAGetErrorInfo   @object,   @src   OUT,   @desc   OUT  
        SELECT   hr=convert(varbinary(4),@hr),   Source=@src,   Description=@desc
        RETURN
END

EXEC   @hr   =   sp_OAMethod   @object,   'responseText', @ResponseText out
 
-- 释放 xmlhttp 对象
exec @hr=sp_oadestroy @object
 

return 0 

原创粉丝点击