GET
1991年,HTTP 0.9 随http出现,HTTP/1.0第一次被定义。
请求资源,幂等,无副作用。
ASCII 字符,URL 的最大长度 2048 个字符,application/x-www-form-urlencoded编码,可被浏览器缓存。
网络爬虫
网络爬虫(web crawler),也叫 网络蜘蛛(spider),robots.txt设置网址给礼貌爬虫的权限。爬虫会更随意的发出get请求,所以要注意无副作用特性
CDN
POST
1996年,HTTP/1.0中定义,提交表单,可能有副作用。
提交数据,有副作用,所以重新提交时浏览器会提醒。
数据无限制,application/x-www-form-urlencoded 或 multipart/form-data编码,不可缓存。
HEAD
1996年,HTTP/1.0中定义,类似get,只请求关于该资源的信息。(元信息或称元数据)。
AJAX
异步JavaScript与XML技术(Asynchronous JavaScript and XML),异步技术使网页无需刷新,产生请求,页面变化
1996年,Internet Explorer引入了 iframe 标签,实现异步加载网页
1998年,Microsoft Outlook Web Acces团队探索了XMLHttpRequest的概念。1999年,XMLHttpRequest随IE5推出。
2006年,W3C 发布了 XMLHttpRequest 对象的第一份规范草案,现在已经是现实标准了
2015年,Fetch伴随Promise出现,也成为了替代XMLHttpRequest的现实标准
REST
具象状态传输,RESTful(Representational state transfer),AJAX出现让请求头,请求参数,状态码放哪成了一个争论的问题,于是出现了公认的RESTful设计标准
PUT
向指定资源位置上传其最新内容。
DELETE
请求服务器删除Request-URI所标识的资源。
TRACE
回显服务器收到的请求,主要用于测试或诊断。
OPTIONS
这个方法可使服务器传回该资源所支持的所有HTTP请求方法。用'*'来代替资源名称,向Web服务器发送OPTIONS请求,可以测试服务器功能是否正常运作。
OPTIONS一般出现于CORS复杂请求
跨域 CORS
# 面试官:说说你对 options 请求的理解
# 10种跨域解决方案(附终极大招)
网络安全
XSS
XSS (Cross Site Script),跨站脚本攻击,因为缩写和 CSS (Cascading Style Sheets) 重叠,所以只能叫 XSS。
- 诱导点击URL进行发送请求
- 用户输入地址跳转,携带cookie
- 前端渲染用户存入的HTML文件
- 字符集绕过转义过滤
CSRF
CSRF(Cross-Site Request Forgery),跨站请求伪造攻击
未登出的情况下,被危险网页打开网站,并发起请求。
SQL注入
后端SQL命令直接使用了前端传来的数据。
命令行注入
与上者类似,直接运行用户传来的数据。
DDoS 攻击
DDoS(Distributed Denial of Service),分布式拒绝服务
利用大量的请求造成资源过载,导致服务不可用
网络层 DDoS
网络层 DDos 攻击包括 SYN Flood、ACK Flood、UDP Flood、ICMP Flood 等。
应用层 DDoS
CC 攻击、DNS Flood、HTTP 慢速连接攻击
流量劫持
DNS 劫持,也叫做域名劫持
当用户通过某一个域名访问一个站点的时候,被篡改的 DNS 服务器返回的是一个恶意的钓鱼站点的 IP
- 网络运营商问题
- 电脑中毒
HTTP 劫持
http响应被串改
启用https
服务器漏洞
- 越权操作漏洞 后端未校验用户
- 目录遍历漏洞
- 物理路径泄漏
- 源码暴露漏洞