首页 > 解决方案 > 从 SQL Server 进行 API 调用时获得空白响应

问题描述

我有一个可以调用 API 并下载响应文件的工作批处理文件。现在,我想从 SQL 服务器进行 API 调用,而不是使用该批处理文件。

Bach 文件有以下代码:

curl -H "X-API-KEY:CDK5fvQodogejk1SFERTGSlbTJivgYNKuZHqyjEFl6zoyHdk8dBcw712Vwf"  https://app.guide.com/external/api/v1/bookings?from_date="2020-10-01"?to_date="2030-12-31" -o "\\LSRSQL01\Share\WorkingFolders\LUXC\AnyRoad\Road_JSON.txt"

T-SQL 代码如下:

DECLARE @Object AS INT;
DECLARE @ResponseText AS VARCHAR(8000);


EXEC sys.sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
EXEC sys.sp_OAMethod @Object,
                     'open',
                     NULL,
                     'get',
                     'https://app.guide.com/external/api/v1/bookings?from_date=2020-10-01?to_date=2030-12-31',
                     'false';
EXEC sys.sp_OAMethod @Object,
                     'setRequestHeader',
                      NULL,
                     'X-API-KEY:CDK5fvQodogejk1SFERTGSlbTJivgYNKuZHqyjEFl6zoyHdk8dBcw712Vwf';
EXEC sys.sp_OAMethod @Object, 'send';
EXEC sys.sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT;

SELECT @ResponseText;

EXEC sys.sp_OADestroy @Object;

在运行上面的代码时,我得到空白响应。

标签: sql-serverapitsql

解决方案


推荐阅读