我正在使用 HttpWebrequest (.Net 4.0) 通过此代码与我的服务器通信。我的问题是,客户端对象将请求的“主机”部分转换为小写(在我的情况下为“TETRA_20”),然后再将其写入线路。因此我的服务器拒绝了这个 HTTP 请求。
有人遇到过类似的问题并解决了吗?这是 .Net 框架的问题吗?
HttpWebRequest client = (HttpWebRequest)WebRequest.Create(uri);
WebHeaderCollection myWebHeaderCollection = client.Headers;
client.SendChunked = false;
if (hostAlias != null)
client.Host = "TETRA_20";
client.UserAgent ="Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko/20100101 Firefox/11.0";
client.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
client.KeepAlive = true;
myWebHeaderCollection.Set("Cache-Control", "max-age=0");
myWebHeaderCollection.Set("Accept-Encoding", "gzip,deflate");
myWebHeaderCollection.Set("Accept-Language", "en-US,en;q=0.5");
WebResponse responseData = client.GetResponse();