【发布时间】:2011-08-01 09:31:05
【问题描述】:
我发现 httpWebRequest 存在一些问题,我在其他论坛上阅读了所有相同的问题,但答案似乎不起作用。我的代码:
HttpWebRequest wr = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse resp;
wr.ContentType = "text/html; charset=UTF-8";
wr.Method = "GET";
wr.Credentials = new NetworkCredential("user", "password");
resp = (HttpWebResponse)wr.GetResponse();
远程服务器返回错误:(401) Unauthorized.
响应说 cookie 中没有身份验证令牌。我可以使用我的身份验证请求和 POST 方法接收这个令牌。我什至尝试通过"new Cookie ("authToken",token_value)". 将其放入CookieContainer,但结果是一样的-error 401。有人知道解决办法吗?
谢谢。
我使用 Zimbra 网络服务器,可以控制它。 .NET 4.0。我的 url 是我需要下载的 .eml 文件的路径。要指定文件,我需要添加一些 GET 参数:id 和 part。所以整个地址看起来像http://someserver.info/service/content/get?id=1&part=1
【问题讨论】:
-
能否说出以下几点: 1. 您请求的站点的 URL 是什么? 2. 您使用的是什么版本的 .NET?(可能不合适) 3. 您使用的 Web 服务器是什么? 4. 您能否控制您尝试连接的 Web 服务器并应用必要的安全权限?谢谢。
-
我使用 Zimbra 网络服务器,有权控制它。 .NET 4.0。我的 url 是我需要下载的 .eml 文件的路径。要指定文件,我需要添加一些 GET 参数:id 和 part。所以整个地址看起来像someserver.info/service/content/get?id=1&part=1
-
您是否尝试过:(如果可能的话)将 Web 服务器与基本的 Web 浏览器连接,并使用 fiddler(fiddler2.com/fiddler2) 之类的工具调试正在发生的事情??
-
可能是您忘记添加一个简单的 webrequest 标头,例如 Cache-Control: no-cache Authorization: Basic "..." 或类似的东西。
-
@Alexander B - 你应该把你的解决方案作为一个答案然后接受它,这样这个 q 就会显示为已完成,并且以后遇到同样问题的人也可以
标签: c# email networking soap httpwebrequest