SSIS HTTP连接管理器返回缓存的结果

问题描述

我创建了一个sql 2012 SSIS程序包,该程序包通过HTTP连接管理器使用HTTP连接来从网站请求文件。因为它仍在开发中,所以我从Visual Studio运行该程序包。直到一周前,该程序包都运行良好。现在,所请求的页面将代替文件而不是文件,返回一个页面,指出“无法找到输出文件”。

好吧。我从连接管理器复制了URL字符串,并将其粘贴到Edge浏览器中。下载在那里就可以了。我得到的文件格式符合我的期望。它可以处理重复的请求。 我曾尝试更改URL(移动查询字符串变量),但在SSIS中仍然会得到不希望的结果。

在Visual Studio的SSIS中是否存在某种HTTP缓存?如果是这样,我如何清除它并从页面请求中获取更新结果?如果不是,为什么我在Visual Studio中反复看到失败的响应,但在浏览器中仍然可以正常工作?

解决方法

我始终对Web请求使用脚本任务。这样做非常简单,并且始终有效。

System.Net.WebClient wc = new System.Net.WebClient();
wc.DownloadFile([url],[fileLocations]);

这主要是因为通常的响应通常是Json或XML,而使用c#NuGet软件包则更容易且可靠地对其进行处理。

“始终有效”需要警告。您需要有权访问URL。