web学习笔记(五十一)

目录

1. post请求和get请求的区别

2. CORS 跨域资源共享

2.1 什么是同源

2.2  什么是同源策略

 2.3 如何实现跨域资源共享

2.4  使用 cors 中间件解决跨域问题

2.5 JSONP 接口

2.6 实现 JSONP 接口的步骤


1. post请求和get请求的区别

  1. 传参方式不同:get请求参数默认拼接到请求路径上,而post请求参数不会拼接到请求路径上,而会携带在请求体中。
  2. 参数大小不同:get请求参数有大小限制(是特定的浏览器及服务器对它的限制),请求参数大小一般 在2k-8K之间,但是post一般没有大小限制,除非是服务器配置了最大请求体大小限制,或者网络设备可能对请求大小进行了限制。

  3. 安全性有所不同:post请求要比get请求更安全

  4. 速度不同:首页展示都是get请求,因为都是数据,速度快 ,登录都是post请求,更安全。get请求比post请求速度更快

  5. 缓存机制不同:get请求可以被浏览器缓存,以提高性能,但是post请求默认情况下不可以被缓存,因为post请求的结果可能会改变服务器上的资源状态。

  6. 幂等性:get请求时幂等的,就是执行重复的get请求不会对服务器端资源产生资源。post请求不是幂等性的,当重复执行相同的post请求可能会对服务器端资源产生多次修改。

2. CORS 跨域资源共享

2.1 什么是同源

如果两个页面的协议,域名和端口都相同,则两个页面具有相同的源。当两个url的协议、域名、端口号三者有一个不一致时就发生了跨域现象。浏览器会对跨域请求进行拦截。

例如,下表给出了相对于 http://www.test.com/index.html 页面的同源检测:

URL

是否同源

原因

http://www.test.com/other.html

同源(协议、域名、端口相同)

https://www.test.com/about.html

协议不同(http 与 https)

http://blog.test.com/movie.html

域名不同(www.test.com 与 blog.test.com)

http://www.test.com:7001/home.html

端口不同(默认的 80 端口与 7001 端口)

http://www.test.com:80/main.html

同源(协议、域名、端口相同)

2.2  什么是同源策略

同源策略(英文全称 Same origin policy)是浏览器提供的一个安全功能MDN 官方给定的概念:同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。

通俗的理解:浏览器规定,A 网站的 JavaScript,不允许和非同源的网站 C 之间,进行资源的交互,例如:

  • 无法读取非同源网页的 Cookie、LocalStorage 和 IndexedDB(浏览器数据库)
  • 无法接触非同源网页的 DOM
  • 无法向非同源地址发送 Ajax 请求

 2.3 如何实现跨域资源共享

  • CORS(主流的解决方案,推荐使用)
  • JSONP(有缺陷的解决方案:只支持 GET 请求)

2.4  使用 cors 中间件解决跨域问题

cors(Cross-Origin Resource Sharing,跨域资源共享)是 Express 的一个第三方中间件。由一系列 HTTP 响应头组成,这些 HTTP 响应头决定浏览器是否阻止前端 JS 代码跨域获取资源。通过安装和配置 cors 中间件,可以很方便地解决跨域问题。

浏览器的同源安全策略默认会阻止网页“跨域”获取资源。但如果接口服务器配置了 CORS 相关的 HTTP 响应头,就可以解除浏览器端的跨域访问限制。

  • 运行 npm install cors 安装中间件
  • 使用 const cors = require('cors') 导入中间件
    let cors = require('cors');//导入
  • 在路由之前调用 app.use(cors()) 配置中间件
    app.use(cors())//配置

2.5 JSONP 接口

       JSONP(JSON with Padding)是一种跨域数据请求技术,它允许在不受同源策略限制的情况下从其他域获取数据。JSONP通过动态创建<script>标签来实现跨域请求,利用回调函数来接收数据。JSONP 不属于真正的 Ajax 请求,因为它没有使用 XMLHttpRequest 这个对象。JSONP 仅支持 GET 请求,不支持 POST、PUT、DELETE 等请求。

2.6 实现 JSONP 接口的步骤

  • 获取客户端发送过来的回调函数的名字
  • 得到要通过 JSONP 形式发送给客户端的数据
  • 根据前两步得到的数据,拼接出一个函数调用的字符串
  • 把上一步拼接得到的字符串,响应给客户端的

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/785878.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文本文件操作

大家好&#xff1a; 衷心希望各位点赞。 您的问题请留在评论区&#xff0c;我会及时回答。 文件操作 程序运行时&#xff0c;产生的数据都是临时数据&#xff0c;程序一旦运行结束都会被释放。通过文件可以将数据持久化。 C中对文件进行操作需要包含头文件<fstream> 文件…

2024年抖音小店的保证金是多少?真的可以做0元保证金的店铺吗?

大家好&#xff0c;我是电商糖果 2024年想要入驻抖音小店的商家依旧很多&#xff0c;关于小店的保证金问题也有不少人前来咨询。 大家问的最多的是可以开通0元保证金的店铺吗&#xff1f;以及2024年抖音小店保证金是多少&#xff1f; 这里糖果给大家一个个解答。 可以开通0…

第十八章 算法

一、介绍 1.1 什么是算法 算法&#xff08;Algorithm&#xff09;是指解题方案的准确而完整的描述&#xff0c;是一系列解决问题的清晰指令&#xff0c;算法代表着用系统的方法描述解决问题的策略机制。也就是说&#xff0c;能够对一定规范的输入&#xff0c;在有限时间内获…

注意力机制篇 | YOLOv8改进之在C2f模块添加级联群体注意力机制CGAttention | CVPR 2023

前言:Hello大家好,我是小哥谈。级联群体注意力机制(Cascading Group Attention)是一种注意力机制,它通过对输入序列进行逐级处理来捕捉不同层次的语义结构。该机制主要由两个关键部分组成:群体注意力和级联过程。在具体实现上,级联群体注意力机制通过构建一个层次结构,…

YOLOv9改进策略 :IoU优化| Inner-IoU基于辅助边框的IoU损失,高效结合 GIoU, DIoU, CIoU,SIoU 等 | 2023.11

💡💡💡本文独家改进:Inner-IoU引入尺度因子 ratio 控制辅助边框的尺度大小用于计算损失,并与现有的基于 IoU ( GIoU, DIoU, CIoU,SIoU )损失进行有效结合,实现高效涨点 💡💡💡适用场景:小目标数据集,涨点近两个点,强烈推荐 《YOLOv9魔术师专栏》将从以下…

第十七章 Kafka

一、特性 - 高吞吐、低延迟 - 高伸缩性 - 持久性、可靠性 - 容错性 - 高并发 通过 O(1)的磁盘数据结构提供消息的持久化&#xff0c;这种结构对于即使数以 TB 的消息存储也能够保持长时间的稳定性能。 高吞吐量&#xff1a;即使是非常普通的硬件 Kafka 也可以支持每秒数百…

内网靶机~~dc-2

一、信息收集 1.端口扫描&#xff1a; nmap -sV -p 1-10000 10.1.1.4 2.CMS识别 3.目录扫描&#xff1a; dirsearch http://10.1.1.4/ 4.FLAG1 似乎让我们用cewl生成密码字典&#xff0c;并爆破登录。 cewl -w rewl_passwd.txt http://dc-2/index.php/flag/ 总结&#xff…

跑腿小程序|基于微信小程序的跑腿平台小程序设计与实现(源码+数据库+文档)

跑腿平台小程序目录 目录 基于微信小程序的跑腿平台小程序设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2、跑腿任务管理 3、任务类型管理 4、公告信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、…

蓝桥杯算法题——暴力枚举法

先估算这个数小于3的50次方 cnt0 for i in range(50):for j in range(50):for k in range(50):a3**ib5**jc7**kif a*b*c<59084709587505:cnt1 print(cnt-1)#当ijk都为0时&#xff0c;a*b*c1不是幸运数字所以要减去

freeRTOS-day2

使用PWMADC光敏电阻完成光控灯的实验 int adc_val 0; //用于保存ADC采样得到的数值 float volt 0; //用于保存电压值while (1){HAL_ADC_Start(&hadc); //开启ADC采样adc_val HAL_ADC_GetValue(&hadc); //获取ADC采样的值volt adc_val / 4095.0f * 3.3f;…

【通信原理笔记】【三】模拟信号调制——3.2 双边带抑制载波调制(DSB-SC)

文章目录 前言一、DSB-SC的数学表示二、DSB-SC的相干解调三、DSB-SC的性能评价总结 前言 从这一篇开始我们依次介绍几种模拟信号调制的方法&#xff0c;包括其数学表达式&#xff0c;系统框图、解调方式、性能评价等。 一、DSB-SC的数学表示 将 m ( t ) m(t) m(t)作为已调信号…

布隆过滤器:基于哈希函数的原理、应用解析

文章目录 一、引言1、布隆过滤器的概念简介2、布隆过滤器是基于哈希函数的强大工具 二、布隆过滤器基础知识1、布隆过滤器的工作原理2、布隆过滤器的空间效率分析3、布隆过滤器的性能特点 三、布隆过滤器的应用场景1、数据库查询优化2、例子 四、布隆过滤器的实现与优化1、常见…

NFG技术引领电商新潮流:普通商品的高端奢侈品化之路

随着网络技术、移动互联网等科技领域的迅猛进步&#xff0c;电子商务在众多新兴行业中逐渐崭露头角。然而&#xff0c;电子商务的蓬勃发展也带来了产品同质化现象加剧、市场竞争日趋激烈的问题&#xff0c;这使得商品在海量产品中脱颖而出变得愈发困难。值得注意的是&#xff0…

AI在行业大模型中的机会及爆发赚钱的行业有哪些?

人工智能(AI)正逐渐成为驱动各行业发展的核心力量,尤其是在应用层,AI结合具体细分领域所带来的生产力提升是巨大的。随着技术的不断进步和人口老龄化趋势的加剧,AI将在多个行业中发挥关键作用,为这些行业带来爆发式增长和丰厚的利润。 一、医疗行业:AI辅助诊断的崛起…

Linux:查询类型的命令type

相关阅读 Linuxhttps://blog.csdn.net/weixin_45791458/category_12234591.html?spm1001.2014.3001.5482 type命令是Linux中一个查询类型的命令&#xff0c;它可以查询name是alias别名、keyword关键字、function函数名、builtin内建命令名&#xff08;这很有用&#xff09;或…

【粉丝福利社】鸿蒙App开发全流程实战(文末送书-进行中)

&#x1f3c6; 作者简介&#xff0c;愚公搬代码 &#x1f3c6;《头衔》&#xff1a;华为云特约编辑&#xff0c;华为云云享专家&#xff0c;华为开发者专家&#xff0c;华为产品云测专家&#xff0c;CSDN博客专家&#xff0c;CSDN商业化专家&#xff0c;阿里云专家博主&#xf…

鸿蒙:滑动条组件Slider

滑动条组件&#xff0c;通常用于快速调节设置值&#xff0c;如音量调节、亮度调节等应用场景。 说明 该组件从API Version 7开始支持。 子组件 无 接口 Slider(options?: {value?: number, min?: number, max?: number, step?: number, style?: SliderStyle, direc…

书生 浦语大模型全链路开源体系

通用大模型成为发展通用人工智能的重要途径 书生 浦语大模型的开源历程 书生 浦语 2.0体系&#xff0c;面向不同的使用需求&#xff0c;每个规格包含三个模型版本&#xff0c;&#xff08;7B、20B&#xff09;InternLM2-Base、InternLM2、InternLM2-Chat。 大模型是回归语言建…

数据可视化-ECharts Html项目实战(9)

在之前的文章中&#xff0c;我们学习了如何在ECharts中编写气泡图&#xff0c;词云图。想了解的朋友可以查看这篇文章。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的不错&#xff0c;请留下你宝贵的点赞&#xff0c;谢谢。 数据可视化-ECharts Ht…

鸿蒙OS开发问题:【尺寸适配算法】

背景 如何在HarmonyOS 系统上出设计稿&#xff1f; 问题1: 为什么要计算虚拟高度&#xff0c;即 virtualHeight static adaptDimension(value: number): number {let deviceDisplay: display.Display GlobalContext.getContext().getObject(display) as display.Display;le…