令人疑惑的数值

      前两天在制作那备份更新地址功能。阅读之前离职同事写的关于下载网络文件的代码时,遇到了一段有疑问的代码:

      ......

      CHttpFile* fileGet;

      ......

      DWORD dwStatus;

      DWORD dwBufflen = sizeof(dwStatus);

      bool succeed;

 

      succeed = fileGet->QueryInfo(HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER,&dwStatus,&dwBufflen);

 

      if(succeed && dwStatus>=200 && dwStatus<300)

      {

          ......

      }

      ......

 

      心里一直对那200和300起疙瘩,这两数值是根据什么来设置的呢。而且测试的时候,那异常的更新文件地址直接跳过这个if里面的语句了,却在后续代码里没作相应处理。

      后来再网上搜索到相关的资讯,关于dwStatus范围的:

    

      200-299  :Success 
 
      300-399  :Information 
 
      400-499  :Request error 
 
      500-599  :Server error 

 

      以及:

   

      200  :URL located, transmission follows 
 
      400  :Unintelligible request 
 
      404  :Requested URL not found 
 
      405  :Server does not support requested method  
 
      500  :Unknown server error 
 
      503  :Server capacity reached 

 

      原来如此。。。把那200和300定义一个易懂的宏看起来就好很多了。再在if后面加个else处理异常,看来除200到299外的都是异常的,都可以统一处理。不过这更新的功能影响重大,一出问题那就是灾难性的,要全面地测测才行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值