AJAX学习笔记总结

目录

AJAX简介

XML简介

AJAX的特点

AJAX的优点

AJAX的缺点

服务端框架

GET请求

绑定事件步骤:

需求案例

body代码

POST请求

跨域

同源策略

如何解决跨域

JSONP

JSONP是什么?

JSONP怎么工作的

JSONP的使用

CORS

CORS是什么?

CORS怎么工作的?

CORS的使用

AJAX****简介

  • AJAX就是异步的JS和XML
  • 通过AJAX可以再浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据

XML****简介

  • XML:可扩展标记语言
  • XML被用来传输和存储数据
  • XML和HTML类似,不同的是HTML中都是预定义标签,而XML中没有预定义标签,全都是自定义标签,用来表示一些数据

|-------------------|
| 注意:XML现在已经被JSON取代 |

AJAX****的特点

AJAX****的优点

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

AJAX****的缺点

  1. 没有浏览历史,不能回退
  1. 存在跨域问题(同源)
  1. SEO(搜索引擎优化)不友好

服务端框架

步骤:

  1. 引入express:const express = require('express')
  1. 创建应用对象:const app = express()
  1. 创建路由规则

GET****请求

绑定事件步骤:

  1. 创建元素对象
  1. 初始化,设置请求方法和url
  1. 发送
  1. 事件绑定

需求案例

  • 点击"点击发送请求"按钮后,向服务端发送GET请求并在下面容器中显示请求到的信息。

body****代码

POST****请求

|-------------------------|
| 注:和上述GET方法类似,只需更改请求方法即可 |

跨域

同源策略

  • 同源策略最早由Netscape公司提出,是浏览器的一种安全策略。
  • 同源:协议、域名、端口号必须完全相同
  • 违背同源策略就是跨域

如何解决跨域

JSONP

JSONP****是什么?

  • JSONP(JSON with Padding),是一个非官方的跨域解决方案,纯粹凭借程序员的聪明才智开发出来的,只支持get请求。

JSONP****怎么工作的

  • 在网页中有一些标签天生具有跨域能力,例如:img link iframe script
  • JSONP就是利用script标签的跨域能力来发送请求

JSONP****的使用

  1. 动态的创建一个script标签

var script = document.createElement("script")

CORS

CORS****是什么?

CORS是跨域资源共享,CORS是官方的跨域解决方案,它的特点是不需要在客户端做任何特殊的操作,完全在服务器中进行处理,支持get和post请求,跨域资源共享标准新增了一组HTTP首部字段,允许服务器声明哪些源站通过浏览器有权限访问哪些资源

CORS****怎么工作的?

  • CORS是通过设置一个响应头来告诉浏览器,该请求允许跨域,浏览器收到响应以后就会对响应放行。

CORS****的使用

主要是服务器端的设置:

相关推荐
李日华大战鸡红7 小时前
滑膜观测器(学习记录)
stm32·单片机·学习·matlab·机器人
青柠之夏cc7 小时前
前端拖拽功能原生实现,不引入拖拽库完成业务
开发语言·前端·python
liangshanbo12158 小时前
前端大文件切片上传怎么做?
前端
传奇开心果编程8 小时前
【现代声明式UI学与练】第4课 列表渲染与 key——如何高效渲染列表、key 的作用、列表重排时的状态保持
学习·flutter·react native·ui·swiftui·android jetpack
传奇开心果编程8 小时前
【Compose Multiplatform 跨端开发学与练】第5课 网络与数据层
android·网络·学习·ui·ios·kotlin·composer
Sand(ContextGate)8 小时前
Python Agent 测试实战:测试与评估,让 Agent 像传统软件一样可交付
前端·javascript·python·microsoft·ai
广州华水科技8 小时前
单北斗GNSS变形监测系统在城市安全与地质灾害中的应用前景
前端
颜进强9 小时前
20 · NestJs循环依赖与 forwardRef:容器为什么在环面前会死,"占位再补齐"怎么救
前端·后端·ai编程
颜进强9 小时前
19 · NestJs @Global 落地账:装饰器与 `isGlobal` 参数,各在什么场景上岗
前端·后端·ai编程
yt004yt9 小时前
园区 VOC 绿岛集中治理项目,管网与监测系统设计要点
大数据·学习