• 【今天是Ajax同学的到来,我们了解一下她吧】


    首先:

    博主是👦一个帅气的boy,你可以叫我山鱼菌
    🖱 ⌨个人主页:山鱼的个人主页

    个人社区:

    欢迎大家加入我的个人社区—— 山鱼社区
    💖💖如果对你有帮助的话希望三连下👍⭐✍支持一下博主🌊

    Ajax简介:

    AJAX技术能够实现无需重新加载整个网页,就可以更新部分网页内容。
    在WEB应用中AJAX使用十分广泛,百度,淘宝,京东等常见的PC端网页以及各种WEB
    APP, 随处可见它的身影,AJAX已经成为前端工程师的常备技能之一。
    AJAX全称为Asynchronous JavaScript And XML,就是异步的JS和XML。
    通过AJAX可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据。
    AJAX不是新的编程语言,而是一一种将现有的标准组合在一起使用的新 方式。

    (1)Ajax的优缺点:

    ①优点

    1.可以无需刷新页面而与服务器端进行通信。
    2.允许你根据用户事件来更新部分页面内容。

    ②缺点

    1.没有浏览历史,不能回退
    2.存在跨域问题[同源] (即是从一个服务器向另外一个服务器发送请求默认是不允许的)
    3.SEO不友好(爬虫无法爬取)
    【SEO (Search Engine
    Optimization) :搜索引擎优
    化。】

    那没问题来了,为什么爬虫无法爬取数据呢?

    答:Ajax会直接向服务器发送一个请求,然后服务器返回数据,最后再由js进行一个动态的呈现,因此爬虫无法得到想要的数据。

    (2)HTTP协议

    (大多数网页都是有HTTP来传输的)

    HTTP (hypertext transport protocol) 协议「超文本传输协议」,协议详细规定了浏览器和万维网服务器之间互相通信的规则。
    在这里插入图片描述

    主要是约定了两块地方,一个是请求,一个是响应(即返回结果)就好比是

    一个小孩拿着一块钱去小卖店买糖一样,小孩给钱老板给糖。

    (3)报文

    请求报文(分为行,头,空行,体):

    行:POST/GET /s?ie=utf-8 HTTP/1.1
    头:Host: shanyu. com
    Cookie: name=shanyu
    Content -type: application/ x -Www- form-urlencoded
    User-Agent: chrome 83

    空行

    体:(get请求时体为空,post请求时体可以不为空)
    username=admin&password=admin

    响应报文(也是分为四部分,行,头,空行,体):

    行:HTTP/1.1(响应http协议版本)200(响应状态码,200表示OK,当然还有其他的一些常见的状态码【404,403,401,500等】)OK(响应状态字符串)

    头:Content-Type: text/html ; charset=utf-8(类型)
    Content-length: 2048(长度)
    Content-encoding: gzip (压缩方式)

    空行

    体(主要返回结果):

    <html>
    <head> 
    head>
    <body>
    <h1>山鱼社区< /h1>
    body>
    < /html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    返回出我们熟悉的html文本,然后再进行渲染。

    写在最后

    ✨原 创 不 易 , 还 希 望 各 位 大 佬 支 持 一 下 \textcolor{blue}{原创不易,还希望各位大佬支持一下}原创不 易,还希望各位大佬支持一下
    点赞👍:您的赞赏是我前进的动力!
    收藏⭐:您的支持我是创作的源泉!
    评论✍:您的建议是我改进的良药!

    山鱼的个人社区:

    欢迎大家加入我的个人社区—— 山鱼社区 💖💖如果对你有帮助的话希望三连下👍⭐✍支持一下博主🌊
  • 相关阅读:
    NLP-了解BERT下游任务
    详细介绍 React 中如何使用 redux
    RabbitMQ详情
    NX上配置TLD的环境---对opencv的版本没有要求
    测试用的文章标题
    STL笔记
    tp5.1 致命错误: Call to undefined method think\Cache::get()
    UML——类图详解
    VC6.0 添加CMarkup文件,程序编译不成功
    事件处理:SpringBoot+Kafka
  • 原文地址:https://blog.csdn.net/zhaochen1127/article/details/126296473