前端面试题-网络请求-http请求方式-http状态码-url地址到浏览器渲染过程-跨域-请求测试工具-http和https

前端面试题-网络请求-http请求方式-http状态码-url地址到浏览器渲染过程-跨域-请求测试工具

  • http请求方式
  • http的状态码有哪些?分别代表什么意思?
  • 从输入一个url地址到浏览器完成渲染的整个过程
  • 解决跨域的三种方式
  • 请求测试工具-postman的使用
  • http和https

http请求方式

方式描述
get发送一个请求来取得服务器上的某一资源
post向url指定的资源提交数据或者附加新数据
put跟post方法很像,也是向服务器提交数据。但是它们之间有不同,put指定了资源在服务器上的位置.post却没有
head只请求页面的首部
delete删除服务器上的某种资源
options用于获取当前url所支持的方法。如果请求成功,会有一个alow的的头包含类似’post.get’这样的信息

常用方式get请求和post请求的区别
get:从指定的资源请求提交数据,用于获取数据
post:向指定的资源提交要被处理的数据,用于将数据发送给服务器

getpost
安全性安全性较差不能用来传递敏感参数,因为它的参数是通过url传递的相对安全 参数放在request中
能否被缓存会被缓存不会缓存
收藏可以被收藏为书签不可以被收藏为书签
历史记录保留在浏览器的历史记录中不会保留在浏览器的历史记录中
长度有请求长度限制对数据长度没有要求
tcp数据包产生1tcp数据包产生2个tcp数据包

get和post本身都是tcp的连接,并无差别。但是由于HTTP规定和浏览器/服务器的限制,导致它们在应用过程中体现出一些不同

http的状态码有哪些?分别代表什么意思?

状态码描述
1xx:信息状态码
100 contiune继续 post 已发送了http head 之后服务端将返回此信息,表示确认之后发送具体参数信息
2xx:成功状态码
200 ok正常返回信息
201 created请求成功并在服务器创建了新的资源
202 accepted服务器已经接收请求但是尚未处理
3xx:重定向
301 moved permanently请求的网页已经移动到了新的位置
302 found临时重定向
303 see other临时重定向,且总是使用get请求新的url
304 not modified自从上次请求后,请求的网页没有修改过
4xx客户端错误
400 bad request服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求
401 unauthorized请求未授权
403 forbidden禁止访问
404 not found找不到与URL相匹配的资源
5xx服务器错误
500 internal server error最常见的服务端错误
503 service unavailable服务端暂时无法处理请求

从输入一个url地址到浏览器完成渲染的整个过程

1.浏览器地址输入URL并回车
2.浏览器查找当前URL是否存在缓存,并比较缓存是否过期
3.DNS解析URL对应的IP
4.根据IP建立TCP连接(三次握手)
5.发生http请求
6.服务器处理请求,浏览器接受HTTP响应
7.浏览器解析并渲染页面
9.关闭Tcp连接(四次握手)

解决跨域的三种方式

1.CROS 服务端 设置请求头

//设置响应头 设置允许跨域response.setHeader('Access-Control-Allow-Origin','*')

2.利用script标签支持跨域的属性 此方法需要服务端配合指定回调

<script>var body_=document.getElementsByTagName('body')[0];function search_(){var value_=q.value;if(value_.trim()==''){return;}var script_=document.createElement('script');//利用script标签之处跨域的属性script_.src='http://suggest.taobao.com/sug?code=utf-8&q=' + value_ + '&callback=cb';body_.appendChild(script_);console.log(script_);}function cb(res) {//回调函数console.log(res);// 数据渲染到页面var lis = ''for (var i = 0; i < res.result.length; i++) {lis += '<li>' + res.result[i][0] + '</li>'}console.log(lis)list.innerHTML = lis} 
</script>

3.代理服务器 通过vue-cli实现 配置vue.config.js文件

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({transpileDependencies: true,//开启代理服务器方式一方便简洁//缺陷一次只能配置一个 且先会去public中去找//如果pubblic中有就不会转发请求了 容易出现问题// devServer: {//   proxy: 'http://localhost:5000'// }//开启代理服务器2devServer: {proxy: {//请求前缀是谁 如果请求前缀符合 下面就继续走//请求前缀紧跟端口号 写在axios里'/quan': {//请求的目标服务器target: 'http://localhost:5000',//路径过滤 正则替换空pathRewrite:{'^/quan':''},//用于支持webscoketws: true,//服务器骗不骗另一个服务器自己从哪里来changeOrigin: true},// '/foo': {//   target: '<other_url>'// }}}
})

3种解决跨域方式的区别:
1.后端处理 前端基本不动啥
2.script标签引入资源不存在跨域 可以引入但是需要后端配合你 让你能掉回调方法
3.vue-cli 开启本地服务器 服务器和服务器之间不存在跨域 从本地代理一下 就能解决跨域 完全前端自己写这个
区别

请求测试工具-postman的使用

在这里插入图片描述

http和https

http:协议运行在TCP之上,明文传输,客户端与服务器无法验证对方的身份,默认端口80
https:运行在ssl(secure socket layer)上面,ssl运行在tcp上面,是添加了加密和认证机制的http,默认端口443,https的加减密处理消耗更多的CPU和内存资源,还需要证书。

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

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

相关文章

公司人才招聘工作开展难点分析

某国有资本运营公司位于北方某省级城市。在2019年&#xff0c;北方某市的当地政府提出组建专业化国有资本投资运营公司&#xff0c;大力开展专业化资本运营&#xff0c;推动国有资本进退留转市场出清和专业化重组的政策方针。为提高国有资产的管理运营能力&#xff0c;该市成立…

KAFKA高可用架构涉及常用功能整理

KAFKA高可用架构涉及常用功能整理 1. kafka的高可用系统架构和相关组件2. kafka的核心参数2.1 常规配置2.2 特殊优化配置 3. kafka常用命令3.1 常用基础命令3.1.1 创建topic3.1.2 获取集群的topic列表3.1.3 获取集群的topic详情3.1.4 删除集群的topic3.1.5 获取集群的消费组列表…

透视AI的智慧之源-解锁可解释性AI(XAI)

可解释性AI&#xff08;XAI&#xff09;是指使人类用户能够理解并信任机器学习算法创建的结果和输出的技术和方法。它旨在将AI模型从黑盒转换为白盒&#xff0c;使人们能够理解AI模型如何做出决策&#xff0c;包括决策的原因、方法和内容。 一、可解释性AI的定义 可解释性AI的…

AutoSAR配置与实践(深入篇)12.2 Time Synchronization[Adaptive Autosar]

AutoSAR配置与实践(深入篇)12.2 Time Synchronization[Adaptive Autosar] Time Synchronization一、TS典型应用场景二、CP和AP时间同步对比三、时间同步基础知识四、TBR部分参数说明五、 TS功能说明5.1 基本说明5.2 时间纠正计算说明5.3 时间验证Time Synchronization ->…

001集—shapefile(.shp)格式详解——arcgis

一、什么是shapefile Shapefile 是一种用于存储地理要素的几何位置和属性信息的非拓扑简单格式。shapefile 中的地理要素可通过点、线或面&#xff08;区域&#xff09;来表示。包含 shapefile 的工作空间还可以包含 dBASE 表&#xff0c;它们用于存储可连接到 shapefile 的要…

1 月 30 日算法练习-思维和贪心

文章目录 重复字符串翻硬币乘积最大 重复字符串 思路&#xff1a;判断是否能整除&#xff0c;如果不能整除直接退出&#xff0c;能整除每次从每组对应位置中找出出现最多的字母将其他值修改为它&#xff0c;所有修改次数即为答案。 #include<iostream> using namespace …

组件如何组织以提升维护性、扩展性

文章目录 一、提升组件的维护性和扩展性1.1、单一职责原则&#xff08;Single Responsibility Principle&#xff09;1.2、松耦合&#xff08;Loose Coupling&#xff09;1.3、高内聚&#xff08;High Cohesion&#xff09;1.4、模块化设计&#xff08;Modular Design&#xff…

LeetCode-题目整理【11】:回溯算法

下面这些题目的解答&#xff0c;都使用到回溯算法解答&#xff0c;通过找到目标条件&#xff0c;满足之后就可以返回&#xff1b;另外可以使用 剪枝&#xff0c;减少调用递归的次数&#xff0c;减少时间。 电话号码的字母组合 中等 给定一个仅包含数字 2-9 的字符串&#xff0c…

从零开始复现GPT2(三):词表,Tokenizer和语料库的实现

源码地址&#xff1a;https://gitee.com/guojialiang2023/gpt2 GPT2 模型词表TokenizerTokenizer 类_normalize 方法_tokenize 方法_CHINESE_CHAR_RANGE 和 _PUNCTUATION_RANGE 数据集语料库TokenizedCorpus 类 模型 词表 定义了一个名为 Vocab 的类&#xff0c;用于处理和管理…

【项目日记(六)】第二层: 中心缓存的具体实现(下)

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:项目日记-高并发内存池⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你做项目   &#x1f51d;&#x1f51d; 开发环境: Visual Studio 2022 项目日…

Ubuntu(22.04):安装VNC

Ubuntu(20.04):安装VNC_ubuntu安装vnc-CSDN博客 Ubuntu20.04上安装VNC与Ubuntu22.04安装VNC略有不同,试了很久才终于成功。 1.在Ubuntu22.04的终端里安装tightvncserver sudo apt install tigervnc-standalone-server 2.在Ubuntu22.04的终端里安装gnome-panel sudo apt inst…

给准备从事软件开发工作的年轻人的13个建议

从事软件开发是一个不断学习和适应变化的过程。这里有一些针对刚入行或准备从事软件开发工作的年轻人的建议&#xff1a; 掌握基础知识&#xff1a;确保你有扎实的编程基础。了解至少一种编程语言的语法和核心概念&#xff0c;比如C语言、Python、Java或C#。同时&#xff0c;理…

Spring 中获取 Bean 对象的三种方式

目录 1、根据名称获取Bean 2、根据Bean类型获取Bean 3、根据 Bean 名称 Bean 类型来获取 Bean&#xff08;好的解决方法&#xff09; 假设 Bean 对象是 User&#xff0c;并存储到 Spring 中&#xff0c;注册到 xml 文件中 public class User {public String sayHi(){retur…

Meta开源Code Llama 70B,缩小与GPT-4之间的技术鸿沟

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

MIT6.5830 实验1

GoDB 介绍 实验中实现的数据库被称为GoDB&#xff0c;根据 readMe1 中的内容可知&#xff0c;GoDB 含有&#xff1a; Structures that represent fields, tuples, and tuple schemas; Methods that apply predicates and conditions to tuples; One or more access methods …

LeetCode 829. 连续整数求和

一开始我想的是质因数分解&#xff0c;然后项数 为奇数的好解决但是偶数弄不了 然后看题解发现了你直接写出通项公式&#xff1a; 假设首项是a&#xff0c;项数为k 则 (ak-1a)*k 2*n 看看k 的范围 2*a 2n/k 1-k>2 2*n/k >k1 2n>k*k 所以可以暴力枚举k sqrt…

大模型学习之书生·浦语大模型笔记汇总

笔记汇总地址&#xff1a; 大模型学习之书生浦语大模型1——全链路开源体系大模型学习之书生浦语大模型2——趣味Demo大模型学习之书生浦语大模型3——基于InternLM和LangChain搭建知识库大模型学习之书生浦语大模型4——基于Xtuner大模型微调实战大模型学习之书生浦语大模型5…

UFS Explorer Professional Recovery: 恢复被 eCryptfs 加密的数据

eCryptfs 是一种应用广泛的加密文件系统&#xff0c;可以对某些文件或目录进行选择性保护。虽然它可靠易用&#xff0c;但当需要恢复已删除或丢失的加密数据时&#xff0c;可能会带来一些挑战。如果没有适当的解密措施&#xff0c;检索到的数据将毫无价值&#xff0c;甚至授权用…

Java 开发环境 全套包含IDEA

一、JDK配置 1.下载 JDK Builds from Oracle 去这边下载open JDK 2.JDK环境变量配置 按win&#xff0c;打开设置 找到环境变量编辑 这边输入的是你下载的那个JDK的bin的路径 检擦配置是否正确在cmd中输入 二、IDEA安装配置 1.下载&#xff08;社区版&#xff09; JetBrai…

【Ubuntu】windows离线安装WSL2

下载AppxBundle文件 网上很多 PS安装 管理员身份打开PowerShell PS E:\> Add-AppxPackage .\CanonicalGroupLimited.Ubuntu22.04LTS_2204.2.47.0_neutral_~_79rhkp1fndgsc.AppxBundle开始菜单确认安装完毕。