问题标签 [httpwebrequest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
16957 浏览

c# - 如何获得 System.Web.HttpWebRequest 对象以使用 SSL 2.0?

我不知道我是否掌握了很好地表达这个问题所需的所有信息,所以请耐心等待。

我有一个受自签名 SSL 证书保护的本地网页(本地含义 192.168.*)。我正在尝试使用 System.Net.HttpWebRequest 对象访问此页面,但遇到了一个奇怪的问题。

如果在关闭“使用 SSL 2.0”选项的 Internet Explorer 中访问此页面,浏览器会返回错误,就好像它无法建立连接一样。(换句话说,浏览器连接错误,而不是服务器发送的错误。)如果打开“使用 SSL 2.0”选项,则页面可以正常工作,并且您会收到标准警告,即这是自签名证书, 你想继续吗, 等等 (奇怪的是, Firefox, 据说没有打开 SSL 2.0, 工作得很好。)

现在我的问题是我正在尝试使用 HttpWebRequest 对象访问此页面,它返回的错误是连接已意外关闭,就像关闭“使用 SSL 2.0”时 IE 抛出的错误一样。(我已经有了代码来忽略它是一个自签名证书的事实,但它甚至没有走那么远。)

如何让 System.Net.HttpWebRequest 在发出请求时“使用 SSL 2.0”?

0 投票
1 回答
4847 浏览

c# - 使用 HttpWebRequest 发布时出现 401(是的,我使用了凭据)

我正在使用 HttpWebRequest 来下拉 XML,并将数据 POST 回“WebService”并在 POST 上获得 401。

创建请求时,我添加了凭据,现在尝试了凭据缓存并将 PreAutenticate 设置为 True,仍然得到 401!:(

观察路由器上的 HTTP 流量,我设置了 get 发出未经身份验证的 GET 请求。它到达 401,然后发出经过身份验证的 GET 并被允许通过。当我观看 POST 时,我看到它达到了 401 ......而且它甚至没有尝试经过身份验证的 POST。

这仅出现在手机上(WinMobile 6.1 上的紧凑框架 3.5 和 2.0)。相同的 .exe 可以在任何台式机上完美运行。

我错过了什么?请帮忙!

0 投票
4 回答
2113 浏览

asp.net - 在执行 WebRequest 时显示加载文本

我的网络表单上有一个按钮。单击此按钮将在 onclick 事件处理程序期间执行 HttpWebRequest。在请求之后,我们将请求中的响应复制到 HttpContext.Current.Response 并将其发送给客户端。

此 Web 请求可能需要一段时间(最多 5 秒,因为它正在生成报告)。在此期间,除了浏览器进度条和旋转的 IE 图标(如果他们使用的是 IE),用户没有任何迹象表明正在发生任何事情。所以在发生这种情况时我需要一个加载指示器。

我尝试使用在按钮的 onclick 事件(使用 OnClientClick)期间触发的 javascript,虽然它有效,但我不知道如何找出 Web 请求何时完成。由于我们只是将响应发送给客户端,因此不会发生完整的回发。

我尝试将按钮包装在 UpdatePanel 中并使用 UpdateProgress,但是当我们将响应发送到 HttpContext.Current.Response 并调用 Response.End() 时,我们在 javascript 中收到错误,因为响应不好形成(我们正在发回一个 Excel 表供用户下载)。

由于我们正在发回一个文件供用户下载,我不想弹出一个单独的窗口,因为在 IE 中他们会得到阻止下载的信息栏。

这里有什么想法吗?

0 投票
2 回答
6979 浏览

c# - 对 SSL 的 HttpWebRequest 失败

我正在使用此代码向给定 URL 发出请求:

我用它来测试工作负载均衡器的粘性,它后面有 3 个服务器。它们都有一个名为 sid.htm 的静态 HTM 文件,其中写入了服务器的服务器 ID。

对于带有 HTTP 的 URL,这可以正常工作。但是对于 HTTPS,它不起作用。我得到这个例外:

请求被中止:无法创建 SSL/TLS 安全通道。

目前,我在 WLB 后面只有 2 台服务器,另外一台在防火墙后面有一个公共 IP。如果我点击独立服务器,HTTPS 请求可以正常工作 - 但是当我点击 WLB 时,我会收到上述错误。

一件事:为了在单台服务器和 WLB 之间切换,我使用了我的 hosts 文件。我的域的 DNS 记录目前指向单个服务器。所以我在我的主机文件中放了一条记录来访问 WLB。这不应该引起问题...

我的问题:HttpWebRequest 使用哪些 SSL 凭证/证书?如果它使用 40 位 DES 或 56 位 DES,这就是原因,因为它们在 WLB 中被禁用。但自从 IE3 和 Netscape 1 和 2 以来,这些证书就没有在浏览器中使用过。

0 投票
2 回答
946 浏览

httpwebrequest - 为什么我从 HttpWebResponse 收到“双重响应”?

下面的代码(在 ASP.Net 2.0 中运行)两次显示请求的 URL 的内容。我只希望它显示一次请求的 URL 的内容。我无法弄清楚我做错了什么。请求的 URL 正在返回 XML,如果我直接访问该 URL,它可以正常工作。

0 投票
4 回答
3211 浏览

c# - 通过 SSL 的 HttpWebRequest?

我以前使用 HttpWebRequests 将数据发布到 HTTPS 网站,而且我从来没有做任何与常规 HTTP Post 不同的事情。

有谁知道我是否错过了任何技巧以确保正确完成?

0 投票
1 回答
1621 浏览

c# - HttpWebRequest,取消请求的已知问题?

取消 HttpWebRequest HTTP 请求是否存在任何已知问题?我们发现当我们取消 4-5 个请求时,下一个请求会无限期挂起。

如果没有已知问题,那么我可能做错了什么......哪里有一个很好的资源示例来展示它是如何工作的(一个完整的解决方案,而不是几个代码片段)?

如果存在已知问题,我可以做些什么来解决它们,以便有效地取消我需要的尽可能多的请求?

0 投票
4 回答
2305 浏览

c# - 使用 HttpWebRequest 下载没有关键敏感问题的网页

使用 HttpWebRequest 下载没有关键敏感问题的网页

0 投票
4 回答
2386 浏览

.net - 模拟 .NET HttpWebRequest 的连接问题

使用 HttpWebRequest 类时,有没有办法以编程方式模拟连接问题(连接缓慢、响应未完成、连接断开等)?

谢谢

编辑:为了详细说明,我需要这个来调试,但最终想把它变成一个测试。我正在使用异步方法 BeginGetRequestStream、EndGetRequestStream、BeginGetResponse 和 EndGetResponse。我已经将它们全部包装在适当的(我希望)Try Catch 块中,记录发生的异常。

我知道这适用于某些情况(例如,当我拔出网络电缆时)。但在极少数情况下(即仅当我请求的网站速度很慢时)我的系统崩溃了,我在事件日志中得到了这个

我假设它来自 HttpWebRequest 但我的所有代码再次包装在 Try Catch 块中。

在这种情况下,模拟会有所帮助吗?

0 投票
4 回答
17235 浏览

c# - C#:下载超时的 URL

在 .NET 中最好的方法是什么?我总是忘记我需要什么Dispose()(或用 包裹using)。

编辑:经过长时间使用WebRequest,我发现了自定义WebClient. 好多了。