我有2个网址,
我正在从2个网址捕获回复,第一个网址将为您提供可下载的CSV文件,第二个网址提供文本回复(例如:{“消息”:“未找到。”})
我想从URL中捕获响应,第二个我可以轻松捕获它作为基于文本的响应,但第一个是花时间,因为URL提供CSV文件和对象“Microsoft.XMLHTTP”下载文件&更新响应。 由于某些CSV文件的数据超过20MB,因此花费了大量时间。
我总共有25K链接。
现在我希望像链接“CSV文件存在”一样捕获如第一个,表示如果存在csv,则状态应为“CSV文件存在”。
你能帮助我实现它吗?我正在使用的PFB程序,
create procedure [dbo].[hit_url_adv](@url varchar(500),@fresults varchar(25) output,@ResponseText Varchar(8000) output)
as
begin
--sp_configure 'show advanced options', 1
--GO
--RECONFIGURE;
--GO
--sp_configure 'Ole Automation Procedures', 1
--GO
--RECONFIGURE;
--GO
--sp_configure 'show advanced options', 1
--GO
--RECONFIGURE;
declare @object int
declare @var varchar(1000)
declare @return int
declare @valid int
set @valid = 0;set @ResponseText=''
--create the XMLHTTP object
exec @return = sp_oacreate 'Microsoft.XMLHTTP', @object output
if @return = 0
begin
--Open the connection
set @var='open("GET", "' + @url + '", false)'
exec @return = sp_oamethod @object, @var
if @return = 0
begin
--Send the request
exec @return = sp_oamethod @object, 'send()'
exec sp_OAMethod @Object, 'responseText', @ResponseText OUTPUT
set @ResponseText=@ResponseText
end
if @return = 0
begin
declare @output int
exec @return = sp_oamethod @object, 'status', @output output
if @output = 200 set @valid = 1
end
end
--destroy the object
exec sp_oadestroy @object
if @valid = 1 set @fresults='Success'
else set @fresults='Failure'
端