问题标签 [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 投票
3 回答
1575 浏览

iphone - 如何在 iPhone 上使用 HTTP 通信?

我想使用 HTTP 连接到服务器,向它发送一个字符串并从服务器接收响应字符串。关于如何通过 url 连接到服务器、发送和接收消息的任何想法?

0 投票
3 回答
23221 浏览

c# - Implement Digest authentication via HttpWebRequest in C#

Does anyone know how to screen scrape web-sites that use digest http authentication? I use code like this:

I'm able to access the site's mainpage, but when I try to surf to any other pages (using another request with the same credentials) I get "HTTP/1.1 400 Bad Request" error.

I used Fiddler to compare requests of my C# application with Mozilla Firefox requests.

2 URLs that I try to access are: https://mysiteurl/forum/index.php https://mysiteurl/forum/viewforum.php?f=4&sid=d104363e563968b4e4c07e04f4a15203

Here are 2 requests () of my C# app:

And that's what Firefox sending to the server:

So in my app I have different values in "nonce" field while in Firefox this field is the same. On the other hand I have same values in "nc" field while Firefox increments this field.

Also when my app tries to access site pages in Fiddler i can see that it always gets response "HTTP/1.1 401 Authorization Required", while Firefox authorizes only once. I've tried to set request.PreAuthenticate = true; but it seems to have no effect...

My question is: how to properly implement digest authentication using C#? Are there any standard methods or do I have to do it from scratch? Thanks in advance.

0 投票
3 回答
1569 浏览

c# - HttpWebRequest 不返回,连接关闭

我有一个 Web 应用程序正在轮询另一台服务器上的 Web 服务。服务器位于同一网络上,并由内部 IP 引用,在端口 8080 上运行。

每 15 秒发出一个请求,该请求会收到一个带有作业信息的 xml 响应。95% 的情况下,这很好用,但是在随机时间,对服务器的请求为空,并报告“远程主机强制关闭响应”。

研究这个问题,其他人设置了 KeepAlive = false。这并没有解决问题。Web 服务器正在运行 .NET 3.5 SP1。

调用响应:

方法是 GET。我尝试更改超时,但默认值足够大,可以考虑到这一点。

我们执行的另一个请求是将数据发布到服务器的 POST,我们也随机遇到相同的问题。没有影响这一点的防火墙,我们排除了病毒扫描程序。非常感谢任何有助于解决此问题的想法!

0 投票
2 回答
7052 浏览

c# - 如何使用 Silverlight GET HttpWebRequest 设置标头?

只要我不向请求中添加任何标头,使用 HttpWebRequest 向 Silverlight 中的 RESTful 服务发出请求就可以正常工作。

一旦我使用这样的代码添加标题

一旦EndGetResponse()被调用,我就会将异常粘贴在这个问题的底部。有谁知道这是为什么?添加标头以获取请求似乎在正常的.NET 中工作正常,所以我猜这是某种 Silverlight 限制,但我找不到任何澄清的文档。

0 投票
3 回答
2971 浏览

c# - 发送 POST 请求:System.Net.WebException

这不是我第一次使用这种方法发送 POST 请求,而且我从来没有遇到任何问题:

在 request.GetRequestStream() 我收到 System.Net.WebException:底层连接已关闭:发送时发生意外错误。
更有趣的是,它在某些机器上运行良好,但不能在我的机器(Windows 7 Beta)和生产服务器(Windows Server 2008)上运行。更多信息:

工作 - Windows Xp - .NET 2.0
工作 - Windows Xp - .NET 3.5
工作 - Windows Server 2003 - .NET 3.0
不起作用 - Windows Vista - .NET 3.5
不起作用 - Windows Server 2008 - .NET 3.5
不起作用t 工作 - Windows 7 测试版 - .NET 3.5 SP1

试过:

  • 一堆东​​西从这里,没有任何帮助。
  • 使用WebClient,没有任何改变。
  • 调整这些选项,但没有发现任何显着差异。
  • 试过WireShark。一个非常好的工具。

[解决了。有点]
我忘了提,但 Uri 是 https ......我尝试了 http 并且它有效。不敢相信,我没有早点尝试……
不过,如果有人能对整个情况有所了解,我将不胜感激。

0 投票
4 回答
5550 浏览

c# - 如何以编程方式检索 html 重定向网页?

我已经完成了这段代码来登录、检索和显示网页:

但是,登录后的以下页面是一个 html 重定向,例如:

如何点击此链接并检索下一页?

0 投票
4 回答
5923 浏览

c# - 重定向到 POST HttpWebRequest

我正在尝试使用 HttpWebRequest 将数据发布到外部 url,然后我需要将用户重定向到我刚刚发布数据的外部 url,这可以首先实现吗?

0 投票
3 回答
6057 浏览

encoding - HttpWebRequest:接收具有正确编码的响应

我目前正在使用以下代码下载 HTML 页面:

这适用于大多数页面,但对于某些页面(例如:www.gap.com),我得到的响应编码不正确。
例如,在 gap.com 中,我将“'”视为“?”
更不用说如果我尝试加载 google.cn 会发生什么......

我在这里缺少什么,让 .Net 对其进行编码?

我最担心的是,我实际上必须读取 HTML 中指定编码的元标记,然后重新读取(重新编码?)整个流。

任何指针将不胜感激。


更新:

感谢约翰桑德斯的回复,我更接近了。HttpWebResponse.ContentEncoding 属性似乎总是​​空的。但是, HttpWebResponse.CharacterSet 似乎很有用,并且使用此代码,我越来越接近:

现在Google.cn 完美的出现了,所有的汉字。
然而,Gap.Com 仍然犯了错误。

对于 Gap.com,HttpWebResponse.CharacterSet 是 ISO-8859-1,我通过 GetEncoding 获得的编码是 {System.Text.Latin1Encoding},它的正文名称中显示“ISO-8859-1”,以及 Content-在指定的 HTML 中键入 META 标记“charset=ISO-8859-1”。

我还在做错什么吗?
还是 GAP 做错了什么?

0 投票
4 回答
24746 浏览

c# - C# 中的 HttpWebRequest 和表单身份验证

我是一名系统专家,目前正在做一个兼职网络开发项目,所以对它很陌生。我正在尝试为 www.portapower.com 编写一个 http 客户端。

它将针对网站上发布的某些项目,如果它们符合特定要求,它将打印一条消息。

尝试访问此页面时:

http://www.portapower.com/getbainfo.php?fclasscode=1&code=CB1831B.40H&fbrand=QUNFUg==

该网站将我重定向到默认注册页面:

http://www.portapower.com/defaregit.php

这是我编码的片段:

我确实有用户名和密码,并且在浏览器中使用时可以正常工作。请告诉我这是否是访问经过身份验证的页面的正确方法。

0 投票
1 回答
409 浏览

c# - C# 链接分析器收到错误请求错误?

我有一个相当简单的程序,它接受一个 URL 并吐出它重定向到的第一个位置。无论如何,我一直在一些链接上对其进行测试,并注意到在一些 url 上出现 400 个错误。我尝试通过将其粘贴到我的浏览器中来测试这些 url,并且效果很好。