问题标签 [system.net.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 回答
438 浏览

c# - 在 C#/Silverlight 中将肥皂信封插入 Web 请求中

我正在尝试将插入肥皂信封保存到 WebRequest 所以我创建了方法

但是有问题,因为:

“System.Net.HttpWebRequest”不包含“GetRequestStream”的定义,并且找不到接受“System.Net.HttpWebRequest”类型的第一个参数的扩展方法“GetRequestStream”(您是否缺少 using 指令或程序集引用?)

0 投票
1 回答
1206 浏览

vb.net - Wordpress HttpWebrequest vb.net

我正在尝试编写一些自我机器人来在我的自托管 wordpress 博客上为我做一些事情,所以我设法使用 webrequests 成功登录,但遇到了一些问题,但解决了。但是现在我正在尝试转到永久链接页面以获取一些数据,但是当我尝试使用登录 cookie 执行此操作时,它只是将我重定向回登录页面,就像我没有使用登录 cookie 一样。

所以基本上这是登录功能:

它运行完美,让我进入 URL 主页并向我显示我已登录。但是当我启动此代码以进入永久链接编辑页面时,它只返回登录页面源代码意味着它无法登录。

0 投票
1 回答
426 浏览

c# - 如何忽略 401 并继续阅读提要

我得到了一个 json 提要。

它不需要任何用户名或密码即可访问。

从谷歌浏览器可以看到。

在谷歌 Chrome 开发者工具中,它也显示状态 401,但仍然能够读取数据。

然后我尝试使用 C# web request 或 webclient,我得到 401 并抛出,不再能够继续。

那么 Chrome 是如何做到的呢?我该怎么办?

我的 C# 代码:

0 投票
1 回答
9210 浏览

c# - 读取 HttpWebResponse 时获取“流不可读”

我正在尝试“筛选”一些数据我有如下请求(来自提琴手)

(内容是我的凭据) - 此标头与我在浏览器中手动查看网页时跟踪的请求相匹配。

我使用 HttpWebRequest.GetResponse() 发送这个我得到回复

这(再次)与我使用浏览器得到的匹配。使用 fiddler,我可以看到 17k 的数据(html),我尝试使用...读取它

我在“新 StreamReader”行上出现异常,指出“流不可读” 我的调试器显示流既不可读也不可写。这是我读过的第二页(第一页是对主 url 的简单请求以获取登录页面)。使用相同的代码可以正常工作。所有流和请求在使用后都已关闭。

谷歌没有给我任何帮助,提示页面错误(不,状态为 200)或已经读取数据(不,代码直接在这里) 我根本没有使用线程,所以这不是问题。我已尝试更改编码(请求 gzip 为我提供了较小的有效负载,但我仍然无法读取它)我在 win7 x64 上使用 c#.net 4.5.2

有谁知道我做错了什么?

0 投票
1 回答
1023 浏览

c# - Windows 2003 服务器:请求被中止。无法创建 SSL/TLS 安全通道

我们正在尝试使用 System.Net.HttpWebRequest (C# .Net 3.5) 调用公共 API,它使用证书来验证和加密数据。从 Windows 8.1 系统调用 API 时,我们看到 API 调用成功。但是在从 Windows 2003 服务器调用 API 时,它会失败并出现以下错误。

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

所需的 P12 文件和 .cert(证书颁发机构)已正确安装在两个系统中。似乎公共 API 支持 TLS1.1+ 协议(不确定但猜测,已经要求 API 支持团队确认相同),其中 Windows 2003 服务器仅支持 SSLv3 或 TLS1.0。这似乎是一个问题。不幸的是,我们有一段时间没有升级服务器的选项,我们只在系统上安装了 .Net 3.5,应用程序是用 Net 3.5 构建的。

牢记这一点,有没有办法在 Windows Server 2003 上验证围绕此问题的根本原因,或者无论如何通过更改协议来支持源代码中的 TLS1.1+?

.Net 4.0 中有将 SecurityProtocol 更改为 TLS11 或 TLS12 的选项,但由于无法将应用程序(作为应用程序套件的一部分)升级到 .Net 4.0,这似乎很难做到。

感谢您的帮助和时间。谢谢。

0 投票
0 回答
138 浏览

oauth - SurveyMonkey 返回意外的 EOF 错误交换访问令牌的授权码

在(显然)新的回调 URL 下将其部署到生产环境后,一直在“localhost”环境中工作的代码失败。没有其他任何改变。向 SurveyMonkey 的 API 请求交换授权码以获得长期访问令牌的请求返回此错误:

System.Net.WebException:基础连接已关闭:发送时发生意外错误。---> System.IO.IOException:从传输流接收到意外的 EOF 或 0 字节。

是否还有其他需要更改的地方,也许是生产client_id?请告知,我们被卡住了。

这是代码:

0 投票
1 回答
176 浏览

c# - TLS 在服务器盒中失败,但在本地工作正常

我有一个网站通过 https 调用 Web API,一切都在 C#.net 中,它工作得很好,直到 API 的提供者更改了证书以删除 SSL,我开始得到:

在我添加了一个修复之后:

为了只允许 tls 密码,在本地使用我在实时环境中调用的相同 URL 一切正常,但在实时服务器上我仍然得到:

我确保代码已更新,应用程序池已回收并且 Tls 协议已在注册键上启用。

有人有什么建议吗?这个 API 是公开的第三方 API

OPENSSL 调用以检索证书:

0 投票
0 回答
112 浏览

c# - Windows Phone 8.1 中的 Microsoft Translator API 提供 System.Net.WebException

我正在开发一个使用 Microsoft Translator API 的 Windows Phone 8.1 应用程序,并且我正在按照教程开发该应用程序。我已经获得了一个clientID和一个clientSecret字符串,并将其分配如下。

注意:由于System.Net.HttpUtility.UrlEncode()Windows Phone 8.1 不可用,我不得不求助于System.Net.WebUtility.UrlEncode(clientSecret).

但是我得到一个未处理的异常,称为

System.Net.WebException:远程服务器返回错误:(400)错误请求。

在此刻HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(ar);

如果有人能告诉我如何解决这个问题,我很感激?谢谢你。

0 投票
1 回答
62 浏览

c# - avito.ru 的 HttpWebRequest -> 错误

需要从任何添加中获取 HTML:https ://www.avito.ru/moskva/kvartiry?user=1

我有以下代码:

直到今天它以前工作得很好。显然他们已经在他们的网站上改变了一些东西,现在代码的最后一行抛出了一个错误,上面写着:

System.Net.WebException:基本连接已关闭:传输时出现意外错误。---> System.IO.IOException:连接错误,因为数据包格式异常。

问题是,我仍然从顶部的链接中得到了很好的回应。

但它会在来自https://www.avito.ru/moskva/kvartiry/2-k_kvartira_54_m_1617_et._555913941之类的响应时引发异常

  • 浏览器请求会得到应有的响应。即使禁用 cookie 和 JS。

有任何想法吗?

附言。错误消息在翻译时可能不准确。我的语法借口..

0 投票
1 回答
475 浏览

c# - HttpWebRequest 强制新连接

我想使用多个线程从有限传输服务器下载大文件HttpWebRequest.AddRange(int, int)。问题是我的所有线程除了一个线程都在 GetResponse() 上被阻塞,可能是因为他们想重用第一个线程的连接。我已将请求的 KeepAlive 属性设置为 false,并增加了并发连接的最大限制ServicePointManager.DefaultConnectionLimit = 1000;

有趣的是,它有时会起作用。如果我使用 2 个线程,它大部分时间都可以工作,有时使用 3 个线程,而且我从未见过它使用 4 个或更多线程。

这是我的代码的一部分,不重要的部分被删除了,给出的片段仍然是我代码中的一个连续块,尽管有评论,我没有删除任何中间的东西。

这是 MakeRangedRequest 函数:

我是否被迫使用 TCP 类来完成这一切?坚持使用 HttpWebRequest 会很棒