zoukankan      html  css  js  c++  java
  • HTTP请求头host解析

    Host: 域名

    Host表示请求的服务器网址;

     
    request headers中的host字段
    例如有user.xiaoqiang.com,hotel.xiaoqiang.com
    现在需要登录后去请求hotel.xiaoqiang.com的数据。
     
    在通过user.xiaoqiang.com/login.do登录成功后,要去请求hotel.xiaoqiang.com的数据。
     
    通过python模拟这些请求,需要模拟请求头:
    reqheaders={'Content-type':'application/x-www-form-urlencoded',  'Accept':'*/*',  'Host':'user.xiaoqiang.com',  'Origin':'http://user.xiaoqiang.com',  'Referer':'http://user.xiaoqiang.com/passport/login.jsp?ret=http%3A%2F%2Fuser.xiaoqiang.com%2Fuserinfo%2Findex.jsp',  'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1',}
     
    请求数据:
    reqdata={'username':'',  'password':'',  'loginType':'0', 'ret':'http://hotel.xiaoqiang.com/nprice/xiaoqiangtest/Query.jsp?cityurl=&fromDate=2014-03-22&toDate=2014-03-25&seq=beijing_city_2642&status=true','remember':0,'vcode':''}
     
    针对user.xiaoqiang.com/login.do登录,请求头中host就是user.xiaoqiang.com。
     
    在登录成功后,直接用登录请求的request headers 去请求hotel.xiaoqing.com的数据,此时服务器返回404,很郁闷,不知道到底是为什么。
     
     
    最后发现是,用于登录的request headers 里边的host是user.xiaoqiang.com,传到服务器以后,hotel.xiaoqiang.com不响应这个请求,所以说是404,就等于在user.xiaoqiang.com上边找不到hotel.xiaoqiang.com的请求
     
    在重新修改request headers里边的host为hotel.xiaoqiang.com,请求即可被hotel.xiaoqiang.com接受,服务器提供了服务,得到了正确的响应。
     
    综上所述,个人理解host字段是代表,你的请求将要达到那台主机,并会在服务端被验证,如果不符合,就不能正确处理客户端的请求。
  • 相关阅读:
    论在Repository中使用EF框架
    SQL字符串函数
    网站可用性测试及优化指南-随笔2
    对线上系统维护工作的总结与思考
    SQL 判断字段中指定字符出现的次数
    SQL SERVER 的 INFORMATION_SCHEMA 的使用
    查看SQL语句执行时间
    Bootstrap框架中的字形图标的理解
    字符串编码、Base64字符串 互转
    根据端口号查应用程序pid
  • 原文地址:https://www.cnblogs.com/liuweiqiang/p/3655741.html
Copyright © 2011-2022 走看看