1小八股

介绍 http 请求分为三个部分,请求行,请求头,请求体

还有状态码的含义

https://juejin.cn/post/7096317903200321544

2tips

Content-Type 影响 chrome 调试时的显示方式

如果是 Content-Type: application/json 浏览器只能显示 request Payload

如果是 Content-Type: multipart/form-data 或 Content-Type: application/x-www-form-urlencoded 浏览器会显示 formData

https://blog.dianduidian.com/post/form-data与request-payload的区别/

3小八股

跨域及处理方案

https://xie.infoq.cn/article/5156a813bf49b0ca0feada736

4大八股

跨域问题的本质:为了防范 CSRF 攻击

  来源:https://catcat.cc/post/2020-06-23/

  CSRF 攻击原理是创建假网站,诱导用户从该网站上向服务器请求资源,该攻击方式可以窃取用户 cookie 伪造用户身份

  如何避免,就是通过跨域策略,浏览器拦截服务器返回的响应,如果服务器只允许同源网站访问,那么就会拦截该响应

  我们写前端的时候,如果和服务器不同源,我们就会被当成假冒网站,被浏览器拦截

  可以通过代理等方式绕过跨域,也可以让后端对不需要保护的资源开放跨域

  服务端开放跨域之后还有另外一种办法保证请求是来自正规网站,而非假冒网站,那就是 CSRF token ,用户请求资源的时候需要带着浏览器中的cookie和正规网页中的token

  如果是假冒网站,假冒网站能访问到cookie,但是访问不到token

xss攻击

  其中还提到了xss攻击,xss攻击利用不明参数进行攻击,不明参数攻击只能攻击到jsp,php等模板渲染网站,像vue这种需要dom攻击(因为是前端页面处理的url),一些带评论的网站用存储型攻击

  xss是注入攻击的一种,sql注入也是注入攻击

【注】:他文章中提到的第一方第三方,第一方是指用户当前使用的网站,不管是正规还是假冒,第三方是指服务器

  xss只包含第一方,所以不会有跨域问题

  美团技术博客中详细介绍了几种xss攻击,并没有涉及到跨域关键词

  https://tech.meituan.com/2018/09/27/fe-security.html

http八股 跨域的本质 请求行 请求头 请求体 xss的更多相关文章

  1. HTTP 笔记与总结(2 )HTTP 协议的(请求行的)请求方法 及 (响应行的)状态码

    (请求行的)请求方法 包括: GET,POST,HEAD,PUT,TRACE,DELETE,OPTIONS 注意:这些请求方法虽然是 HTTP 协议规定的,但是 Web Server 未必允许或支持这 ...

  2. jsonp 跨域请求

    背景: JavaScript是一种在Web开发中经常使用的前端动态脚本技术.在JavaScript中,有一个很重要的安全性限制,被称为"Same-Origin Policy"(同源 ...

  3. ajax跨域请求时,sessionId不一样,导致无法记住登陆状态

    遇到这样一个场景,就是前端的域是dev,请求接口时,接口的域是beta,即使在服务端设置了cookie存放的域,'COOKIE_DOMAIN'   =>  '.roboming.com',虽然c ...

  4. Django跨域请求

    一.jsonp方式 同源策略会阻止ajaxa请求,但不阻止src. jsonp方式其实是利用了<script>标签可以直接跨域的性质,在body中生成一个<script>标签, ...

  5. 关于Ajax的get与post浅分析,同步请求与异步请求,跨域请求;

    Ajax局部异步刷新全称ASynchronous JavaScript And XML.使用Javascript代码获取服务器的数据,Ajax当中有两个请求方法,一个是get方法,一个是post请求方 ...

  6. Vue--axios:vue中的ajax异步请求(发送和请求数据)、vue-resource异步请求和跨域

    跨域原理: 一.使用axios发送get请求 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 & ...

  7. ajax异步请求/同源策略/跨域传值

    基本概念 Ajax 全称是异步的 JavaScript 和 XML . 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进 ...

  8. Django框架深入了解_01(Django请求生命周期、开发模式、cbv源码分析、restful规范、跨域、drf的安装及源码初识)

    一.Django请求生命周期: 前端发出请求到后端,通过Django处理.响应返回给前端相关结果的过程 先进入实现了wsgi协议的web服务器--->进入django中间件--->路由f分 ...

  9. Django前后端分离跨域请求问题

    一.问题背景 之前使用django+vue进行前后端分离碰到跨域请求问题,跨域(域名或者端口不同)请求问题的本质是由于浏览器的同源策略导致的,当请求的响应不是处于同一个域名和端口下,浏览器不会接受响应 ...

  10. 【笔记】Asp.Net WebApi对js POST带参数跨域请求的支持方案

    先说下需求:在原来的WebApi项目中增加对js跨域的请求支持,请求方式:以POST为主,webapi路由规则根据原项目需求修改如下: public static void Register(Http ...

随机推荐

  1. springcloud组件梳理之hystrix

    在微服务架构体系中,各服务中间的相互调用是常态,没有哪个服务能保证自身百分百不会出问题,然后再加上网络的波动以及环境等问题,服务间调用的稳定性无法保证,这时候就需要一个有容错能力的组件来介入,当调用出 ...

  2. C#使用GDI+同时绘制图像和ROI在picturebox上

    Bitmap bmp; /// <summary> /// 绘制图像 /// </summary> /// <param name="g">Gr ...

  3. perl遍历哈希的所有健和值

    my %h=("001",{name,"李白",age,"18",height,"185",weight,"6 ...

  4. Go语言核心36讲13

    我们已经讨论过了通道的基本操作以及背后的规则.今天,我再来讲讲通道的高级玩法. 首先来说说单向通道.我们在说"通道"的时候指的都是双向通道,即:既可以发也可以收的通道. 所谓单向通 ...

  5. WSL下的Ubuntu 18.04LTS配置软件源和系统更新

    WSL下的Ubuntu 18.04LTS配置软件源和系统更新 设置系统语言为中文 # 安装中文支持 sudo apt-get install -y language-pack-zh-hans # 设置 ...

  6. DRF认证流程及源码分析

    认证 前言 用户验证用户是否合法登陆. 部分内容在DRF视图的使用及源码流程分析讲解,建议先看讲解视图的这篇文章. 使用流程 认证使用的方法流程如下: 自定义认证类,继承BaseAuthenticat ...

  7. windows10 设置VS一类的不提供兼容性视图的程序默认管理员启动

    选择兼容性疑难解答: 选择疑难解答程序: 下一步后保存即可.

  8. HBX更新后无法打包

    HBX更新到3.2.2.20210818后H5打包增加了校验 HBuilder X - Release Notes ====================================== 3.2 ...

  9. 关键字break和continue

    关键字:break 和continue提供了另一种控制循环的方式. break 是直接退出循环体 如: continue  是退出当前循环迭代 如: 需要注意的是:使用过多的break和continu ...

  10. Django静态文件配置、form表单、request对象、连接数据库、ORM

    目录 静态文件配置 静态文件相关配置 1.接口前缀 浏览器停用缓存 2.接口前缀动态匹配 form表单 action 控制数据提交的地址 method 控制数据提交的方法 请求方法补充 get: 朝服 ...