0

我看到对这个问题的几个回应,但在我的情况下似乎没有一个。这是情况。

我正在使用来自 thetvdb.com 的 API。

我正在通过 API 加载 XML。如果我运行该应用程序,它会给我一个 401 错误。如果我先在 IE 中加载 URL,然后运行它加载的应用程序就很好。

我怀疑这是一个 cookie 问题,但我不确定在下面的请求期间如何传递该 cookie。

var _doc = new XmlDocument();
_doc.Load(_url);

在此先感谢您的帮助。

4

2 回答 2

2

HTTP 错误 401 表示“未经授权”。

这意味着您需要联系提供 API 的人员并询问他们如何进行身份验证。

每个提供商都不同。
合适的人是那些提供 Web 服务/API 的人。

于 2012-05-02T15:32:36.610 回答
1

经过大量阅读和反复试验,我已经弄清楚了。我已经在几个站点上对此进行了测试。

WebRequest _wr = WebRequest.Create(_url);
_wr.UseDefaultCredentials = true;
_wr.PreAuthenticate = true;
_wr.GetResponse();
//do your stuff
_wr.Dispose();

这似乎复制了我手动打开浏览器并导航到页面以防止启动应用程序时出现 401 错误的步骤。我希望这对其他人有所帮助,因为我理解这种挫败感。

于 2012-05-10T13:48:49.520 回答