2021-11-03 vue笔记:反向代理介绍和使用场景,基于 vue-cli 的反向代理设置及 axios 获取 json 数据
文章目录
- 0.反向代理是什么?
- 1、正向代理(forward proxy)
- 2、反向代理(Reverse proxy)
- 1.为什么要配置反向代理?
- 2.如何实现vue中配置反向代理?
- 2.1.安装和引入axios库
- 2.2. 配置文件vue.config.js
- 2.3.使用axios
0.反向代理是什么?
1、正向代理(forward proxy)
客户端想要访问一个服务器,但是它可能无法直接访问这台服务器,
这时候这可找一台可以访问目标服务器的另外一台服务器,
而这台服务器就被当做是代理人的角色 ,称之为代理服务器,
于是客户端把请求发给代理服务器,
由代理服务器获得目标服务器的数据并返回给客户端。
客户端是清楚目标服务器的地址的,而目标服务器是不清楚来自客户端,
它只知道来自哪个代理服务器,所以正向代理可以屏蔽或隐藏客户端的信息。
2、反向代理(Reverse proxy)
从上面的正向代理,你会大概知道代理服务器是为客户端作代理人,
它是站在客户端这边的。其实反向代理就是代理服务器为服务器作代理人,站在服务器这边,
它就是对外屏蔽了服务器的信息,常用的场景就是多台服务器分布式部署,
像一些大的网站,由于访问人数很多,就需要多台服务器来解决人数多的问题,
这时这些服务器就由一个反向代理服务器来代理,
客户端发来请求,先由反向代理服务器,
然后按一定的规则分发到明确的服务器,
而客户端不知道是哪台服务器。常常用nginx来作反向代理。
1.为什么要配置反向代理?
前后端分离的网站下,不同源的网站不允许发送ajax请求
解决办法:
jsonp跨域:原理不用ajax,使用script标签,script标签不受同源策略的影响,缺点是script只能是get请求
反向代理原理:避免跨域 服务器给服务器发请求
2.如何实现vue中配置反向代理?
步骤和示例
2.1.安装和引入axios库
- 安装命令:
npm install axios
,node-modules文件夹中有axios文件夹即成功安装 - 在vue项目App.vue的script标签中引入:
import axios from "axios"
2.2. 配置文件vue.config.js
在项目中的位置:
vue-config.js
代码复制
module.exports = {devServer: {proxy: {'/ajax': {target: 'http://m.maoyan.com',changeOrigin: true}}}
}
2.3.使用axios
发送get请求:
App.vue
export default {mounted(){axios.get("/ajax/movieOnInfoList?token=").then(res=>{console.log(res.data);})}
};
相关博文:vue设置反向代理
2021-11-03 vue笔记:反向代理介绍和使用场景,基于 vue-cli 的反向代理设置及 axios 获取 json 数据相关推荐
- vue通过axios获取json数据
文章目录 前言 一.axios的安装 二.通过axios.get()方法获取json数据 2.1下面的代码是通过axios.get()获取json数据 2.2显示json数据 总结 前言 今天学习了通 ...
- vue接收json数据_Vue之使用ajax获取json数据,并用v-for循环显示在表格中
运行的时候,出现了php跨域问题,解决办法是在php的头文件中添加了如下代码: header('Content-Type: application/json'); header('Content-Ty ...
- 如何解决@RequestParam无法接收vue+axios传递json数据
文章目录 axios的post请求无法发送到后端 1.问题 : axios的post的传递的json数据无法接收 2.问题代码 3.问题归因 4.问题解决 5.查漏补缺 axios的post请求无法发 ...
- 2021/11/18学习笔记:城市建成区的边界
老师让我做城市建成区的边界 卒 这咋做啊... 这小半个月都在做这个了... 把思路整理一下,免得以后忘记了. 数据来源: 1.夜间灯光数据:Chen Zuoqi, Yu Bailang*, Yang ...
- vue框架可以配合php做企业站,基于Vue和PHP打造前后端分离的通用管理系统(一)...
实用人群 适合小白入门,高手请绕行 技术栈 javascript vuejs webpack babel eslint nodejs axios php mysql redis git vagrant ...
- AngularJS学习笔记(3)——通过Ajax获取JSON数据
通过Ajax获取JSON数据 以我之前写的与用户交互的动态清单列表为例,使用JSON前todo.html代码如下: <!DOCTYPE html> <html ng-app=&quo ...
- vue实现搜索框记录搜索历史_2018-09-13 基于Vue的搜索栏功能实现(we-ui)
视图代码 搜索 取消 {{item.userName}} Script代码 mounted() { this.$ajax({ method: "get", url: ". ...
- php获取网页js中的json,从php获取json数据使用js读取显示到网页笔记
//json与数组转换 $array = array("username" => "hellojson","age" => 23 ...
- Bili狂神说Vue笔记
1.前端知识体系 想要成为真正的"互联网Java全栈工程师"还有很长的一段路要走,其中前端是绕不开的一门必修课.本阶段课程的主要目的就是带领Java后台程序员认识前端.了解前端.掌 ...
最新文章
- There's no Qt version assigned to this project for platform Win32/Win64
- Spring Boot + Vue 如此强大?竟然可以开发基于 C/S 架构的应用
- Maven项目下HttpServletRequest 或 HttpServletResponse需引用的依赖包
- R语言使用broom包将回归模型(线性回归、逻辑回归、比例风险回归)的结果整理成dataframe并导出到excel等文件中:基于mtcars和colon数据集
- C# 简单的XML读取修改写入
- idea从安装到项目启动
- jenkins部署java_在Window上使用Jenkins自动部署和上传快照Java工件
- daterangepicker双日历插件的使用
- LeetCode 548. 将数组分割成和相等的子数组(哈希set)
- 速围观!云+X 案例评选榜单重磅出炉!
- 使用meta来刷新网页效果
- KDD2021 | 推荐系统中利用深度哈希方法学习类别特征表示
- C#基础8:类的继承
- SONiC testbed
- Fiji-imageJ 无法打开
- 单播、组播(目标广播、多播)、广播、泛洪、洪泛介绍与比较
- python输出时间差_利用python计算时间差(返回天数)
- python推荐系统实战_Python项目实战!分析9000部电影,打造一个简单的电影推荐系统...
- WebGL着色器变量(attribute、uniform和varying)
- 解决git命令You must use a personal access token or SSH key的问题
热门文章
- 构建微波和毫米波自动测试系统需要考虑哪些因素?(一)
- Word去除页眉下的横线
- golang连接sm3认证加密
- 易语言编程之CE过驱动保护(ACE)调试教程
- matlab高斯拟合多峰,MATLAB用“fitgmdist”函数拟合高斯混合模型(一维数据)
- video元素及 vue-video-player兼容iphone12及13的微信网页
- 2019IDC:是谁拿下中国机器学习平台市场份额第一?
- whereis, which详解
- EntityFramework项目“The model backing xxx context has changed ”错误解决-CodeFirst迁移踩坑记录
- Android打开/关闭数据流量