# HTTP请求(Request)
'''
当用户通过浏览器访问某个网站时,
浏览器会向网站服务器发送请求,这个请求就叫做HTTP请求。
请求包含的内容主要有:
请求方法(Request Method);
请求网址(Request URL);
请求头(Request Headers);
请求体(Request Body)。
'''#为了更直观地说明这个过程,我们使用Chrome浏览器自带的“开发者工具”来查看浏览器发送的请求信息。
# 下面以访问百度(https://www.baidu.com/)为例来讲解。
'''
1.打开Chrome浏览器,按F12键,显示“开发者工具”栏。
2.在地址栏中输入百度网址https://www.baidu.com/,然后回车。
3.此时“开发者工具”栏抓去了许多浏览器请求及服务器响应信息。
'''

# 下面来看一下浏览器向百度的网站服务器发送了哪些信息。
#1.请求方法(Request Method)
'''
HTTP协议定义了许多与服务器交互的方法,最常用的是GET和PLST方法。
如果浏览器向服务器发送一个GET请求,
则请求的参数信息会直接包含在URL中。
例如在百度搜索栏中输入scrapy,单击"百度一下“按钮,就形成了一个GET请求。
搜索结果页面的URL变为https://www.baidu.com/s?wd=scrapy,
URL中问号(?)后面的wd=scrapy就是请求的参数,表示要搜索的关键字。POST请求主要用于表单的提交。
表单中输入的卡号、密码等隐私信息通过POST请求方式提交后,
数据不会暴露在URL中,而是保存于请求体中,避免了信息的泄露。
'''# 2.请求网址(Request URL)
'''
另外,还有一个选项Remote Address: 14.215.177.38:443,这是百度服务器的IP地址。
也可以使用IP地址来访问百度。
'''# 3.请求头(Request Headers)
'''
请求头的内容在Headers选项卡中的Request Headers目录下,
如下图所示。请求头中包含了许多有关客户端环境和请求正文的信息,
比较重要的信息有Cookie和User-Agent等。
'''


'''
Accept:浏览器端可以接收的媒体类型。
text/html代表浏览器可以接收服务器发送的文档类型为text/html,也就是我们常说的HTML文档。
Accept-Encoding:浏览器接受的编码方式。
Accept-Language:浏览器所接受的语言种类。
Connection:表示是否需要持久连接。keep-alive表示浏览器与网站服务器保持连接;close表示一个请求结束后,浏览器和网站服务器就会断开,下次请求时需重新连接。
Cookie:有时也用复数形式Cookies,指网站为了提高用户身份、进行会话跟踪而存储在本地的数据(通常经过加密),由网站服务器创建。
例如当我们登录后,访问该网站的其他页面时,发现都是处于登录状态,这是Cookie在发挥作用。
因为浏览器每次在请求该站点的页面时,都会在请求头上加上保存有用户名和密码等信息的Cookie并将其发送给服务器,
服务器识别出该用户后,就将页面发送给服务器。
在爬虫中,有时需要爬取登录后才能访问的页面,通过对Cookie进行设置,就可以成功访问登录后的页面了。Host:指定被请求资源的Internet主机和端口号,通常从URL中提取。User-Agent:告诉网站服务器,客户端使用的操作系统、浏览器的名称和版本、CPU版本,以及浏览器渲染引擎、浏览器语言等。
在爬虫中,设置此项可以将爬虫伪装成浏览器。'''
# 4.请求体(Request Body)
'''
请求体中保存的内容一般是POST请求发送的表单数据。
对于GET请求,请求体为空。
'''

HTTP请求(Request)详解相关推荐

  1. 转: Springboot — 用更优雅的方式发HTTP请求(RestTemplate详解)

    转自: Springboot - 用更优雅的方式发HTTP请求(RestTemplate详解) - Java知音号 - 博客园RestTemplate是Spring提供的用于访问Rest服务的客户端, ...

  2. java ajax同步请求,成都汇智动力-java ajax实现异步同步请求全面详解

    原标题:成都汇智动力-java ajax实现异步同步请求全面详解 对象 var request=new () //兼容IE5 IE6 if (window.) {// code for IE7+, F ...

  3. HTTP中request详解

    1)获取常用信息 >获取客户端的IP System.out.println("IP:"+request.getRemoteAddr()); //IP:0:0:0:0:0:0: ...

  4. python headr方法_对Python发送带header的http请求方法详解

    简单的header import urllib2 request = urllib2.Request('http://example.com/') request.add_header('User-A ...

  5. 通过CURL请求示例详解HTTPS协议

    通过CURL请求示例详解HTTPS协议 基于HTTPS通信是当前互联网最通用便捷的通信方式,简单理解来看可以视为HTTP协议 + SSL/TLS协议,通过一个curl的示例阐述一下HTTPS协议. 特 ...

  6. $.post把表单对象传递过去_第二章 第三节 Request请求对象详解

    Request对象和Response对象是必须熟悉的. Request对象负责请求的构造和处理 Response对象负责返回资源的解析和处理 一.Request对象参数 Request(url[, c ...

  7. javaweb_笔记2(Servlet源码分析;request详解;请求域;转发和重定向;WebServlet注解;jsp基础语法,JavaBean。)

    1.HttpServlet源码分析 HttpServlet类是专门为HTTP协议准备的.比GenericServlet更加适合HTTP协议下的开发. HttpServlet在哪个包下? jakarta ...

  8. NETGEAR拒绝连接请求_详解 Tomcat 的连接数与线程池

    点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 关注公众号后台回复pay或mall获取实战项目资料视频 点击此链接:多套SpringCloud/SpringBoot实 ...

  9. postman请求参数详解

    1. Authorization 身份验证,主要用来填写用户名密码,以及一些验签字段,postman有一个helpers可以帮助我们简化一些重复和复杂的任务.当前的一套helpers可以帮助你解决一些 ...

  10. Nginx 请求压缩详解

    一.介绍 请求压缩,是将服务器的结果通过 Nginx 将内容进行压缩后,在发送给客户端,降低网络传输压力,提升传输效率. 常见的两种请求方式是: gzip .brotli(Google),相当于 br ...

最新文章

  1. JVM 出了问题 EXCEPTION_ACCESS_VIOLATION
  2. linux定时关机命令_电脑设置定时关机你会吗?Windows自带的这行命令真好用
  3. 2015版App推广全攻略:你所不知道的撕逼营销,事件营销和PR传播
  4. Android 去掉TabLayout下的阴影,AppBarLayout下的阴影
  5. 同学的博客,没想到也这么多文章。
  6. 擠出機步進馬達的 Steps per Unit 該如何計算?
  7. ImportError: cannot import name ‘py_checkpoint_reader‘ from ‘tensorflow.pyth
  8. ASP.NET的安全性
  9. 朴素版的Dijkstra算法
  10. Ubuntu 18.04 安装搜狗拼音 2022年版 Install sogou pinyin in Ubuntu 18.04 in 2022
  11. 软件工程经济学作业5-7
  12. 转载一些Unity插件及资源
  13. MUI框架学习——了解MUI
  14. cmake出错:Building inplace are not allowed. You should create a separate directory for Building.
  15. 毕业设计 基于深度学习的动物识别 - 卷积神经网络 机器视觉 图像识别
  16. #小何不断努力# Day1
  17. 计算机视觉 深度学习 slam 三维重建 机器学习学习资料整理
  18. 芯片引脚断了,没关系,剥开去盖后飞线还能用......
  19. python怎么定义int变量_Python 变量类型 | 菜鸟教程
  20. OpenStack-Q版实战部署技术指导手册详情-让你轻松掌握-黑夜青儿

热门文章

  1. iOS8 横竖屏控制
  2. Python+Flask+MySQL开发的在线外卖订餐系统(附源码)
  3. [ZT]森田学习体会
  4. 微信支付V3 微信小程序签名失败问题
  5. C4D模型工具—循环/路径切割
  6. 如何用来逗微信图文编辑器整理高质量的端午节公众号文章
  7. 对C#装箱和拆箱的理解
  8. C++ 中为什么要有“ 指针” 和 “ 引用”
  9. openshift4离线部署_OpenShift Origin 3.9离线部署方法
  10. 3岁宝宝记忆力测试软件,三岁小孩记忆力惊人,做好这些你家娃也可以拥有“最强大脑”!...