HttpWebRequest编程相关问题(8)-完结篇

本文探讨了使用 HttpWebRequest 类进行编程时遇到的主要问题,包括 Cookies 处理、浏览器版本兼容性、HTTP 头设置、返回 HTML 数据一致性及数据编码等,并提供了获取时间戳和 MD5 加密的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从个人经验来看,目前的httpwebrequest不是一个很成熟的类。

最关键的问题是它在处理 Cookies上有些混乱,而Cookies是你访问那些需要认证网页的关键。

总结一下Httpwebrequest编程中主要的问题:

  1. Cookies问题(重中之中);
  2. 浏览器版本问题;
  3. Http头的问题,其中需要注意post的content-type和Http头中是否被加入了不标准的内容(这个问题太隐蔽);
  4. 返回的html数据和浏览器对应的页面html不一致;
  5. 提交数据的编码问题,编码问题很讨厌。由于编码采用了错误方式,我的msn space被封了几个小时;
  6. Hidden问题,有些服务器会写一个hidden到页面,这个Hidden也需要提交回去。

最后友情赠送方法二个:

  1. 获取一个时间值,很多网站使用了这个时间值,对应于javascript中的gettime方法;
  2. MD5加密;
        public static string GetMilliseconds()
        
{
            
double d = DateTime.Now.Subtract(new DateTime(197011800)).TotalMilliseconds;
            
return Convert.ToInt64(d).ToString();
        }

        
public static string GetMD5(string str)
        
{
            MD5 md5 
= new MD5CryptoServiceProvider();
            
return BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(str))).ToLower().Replace("-""");
        }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值