SQL SERVER HTTP请求

--开启Sql Server 通讯配置--
sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
EXEC sp_configure 'Ole Automation Procedures';
GO
/*
参数说明?
@URL=http请求地址
@Status=状态代码
@ReturnText=返回码
@Object=对象令牌
@ErrSrc=错误源编码
*/
CREATE PROCEDURE [dbo].[HttpRequest](
    @URL NVARCHAR(4000),
    @Status INT=0 OUTPUT,
    @ReturnText NVARCHAR(4000)='' 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;
GO

 

转载于:https://www.cnblogs.com/varorbc/p/4633000.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值