get请求:
1)创建url字符串(这个字符串中带有请求体)
2)创建请求头
3)根据url和请求头创建请求对象
4)通过请求对象发起get请求
post请求:
1)创建url字符串(这个字符串中不带请求体)
2)创建请求头
3)创建请求体
4)根据url、请求头和请求体创建请求对象
5)通过请求对象,发起post请求
2、ajax请求
1、为什么会有ajax?
由于前端语言JavaScript是一种单线程的语言,比如说对于一些耗时操作(读磁盘、请求网络),如果在一个主线程中去处理必然会造成前端页面的假死(主线程阻塞),解决的办法就是在做这些耗时操作的时候开启一个子线程去做(这样不会影响主线程的执行),但是js做不到,此时就需要ajax来做,我们开启一个ajax的时候,浏览就会给ajax单独开辟一个独立运行的环境,异于js的主线程,从而做到异步请求。
2、在爬虫中如何判断并处理ajax请求?
判断:
1)从前端表面现象来看,局部刷新的请求怀疑是ajax
2)从抓包工具中来看,如果抓到的请求头中含有ajax对象(XMLHttpRequest),一定ajax请求
处理:
1)判断是哪种请求
2)根据不同请求方式创建不同的请求对像来处理