文章目录

  • 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 数据相关推荐

  1. vue通过axios获取json数据

    文章目录 前言 一.axios的安装 二.通过axios.get()方法获取json数据 2.1下面的代码是通过axios.get()获取json数据 2.2显示json数据 总结 前言 今天学习了通 ...

  2. vue接收json数据_Vue之使用ajax获取json数据,并用v-for循环显示在表格中

    运行的时候,出现了php跨域问题,解决办法是在php的头文件中添加了如下代码: header('Content-Type: application/json'); header('Content-Ty ...

  3. 如何解决@RequestParam无法接收vue+axios传递json数据

    文章目录 axios的post请求无法发送到后端 1.问题 : axios的post的传递的json数据无法接收 2.问题代码 3.问题归因 4.问题解决 5.查漏补缺 axios的post请求无法发 ...

  4. 2021/11/18学习笔记:城市建成区的边界

    老师让我做城市建成区的边界 卒 这咋做啊... 这小半个月都在做这个了... 把思路整理一下,免得以后忘记了. 数据来源: 1.夜间灯光数据:Chen Zuoqi, Yu Bailang*, Yang ...

  5. vue框架可以配合php做企业站,基于Vue和PHP打造前后端分离的通用管理系统(一)...

    实用人群 适合小白入门,高手请绕行 技术栈 javascript vuejs webpack babel eslint nodejs axios php mysql redis git vagrant ...

  6. AngularJS学习笔记(3)——通过Ajax获取JSON数据

    通过Ajax获取JSON数据 以我之前写的与用户交互的动态清单列表为例,使用JSON前todo.html代码如下: <!DOCTYPE html> <html ng-app=&quo ...

  7. vue实现搜索框记录搜索历史_2018-09-13 基于Vue的搜索栏功能实现(we-ui)

    视图代码 搜索 取消 {{item.userName}} Script代码 mounted() { this.$ajax({ method: "get", url: ". ...

  8. php获取网页js中的json,从php获取json数据使用js读取显示到网页笔记

    //json与数组转换 $array = array("username" => "hellojson","age" => 23 ...

  9. Bili狂神说Vue笔记

    1.前端知识体系 想要成为真正的"互联网Java全栈工程师"还有很长的一段路要走,其中前端是绕不开的一门必修课.本阶段课程的主要目的就是带领Java后台程序员认识前端.了解前端.掌 ...

最新文章

  1. C/C++ 编程规范(01 )— 排版
  2. c#执行oracle存储过程,C#中如何执行存储过程方法
  3. java dao层 service层_Java中DAO层、Service层和Controller层的区别
  4. Scikit-Learn 机器学习笔记 -- 模型训练
  5. python中打印zip()函数结果和zip()函数的使用
  6. Why Apache Spark is a Crossover Hit for Data Scientists [FWD]
  7. 无服务器冷启动不是问题-这就是为什么(对于大多数应用程序)
  8. Spring框架的快速入门
  9. 解决安装phpstudy之后启动Apache失败的问题
  10. setpairint,int 的用法
  11. Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理
  12. echarts饼图解析html标签,如图,用了echarts页面为什么不识别html标签?
  13. linux备份根目录与还原脚本,Shell脚本备份和还原MBR(主引导记录)
  14. 十代主板改win7_技嘉B460主板UEFI+GPT装win7|10代CPU装win7 Bios设置
  15. C# 修改list所有对象中的某字段
  16. 生成一个6位数的随机密码,且需要包括字符、数字、特殊符号
  17. zblog php 模板修改,ZBlog博客程序zblogPHP主题模板定制仿制修改
  18. win8计算机禁止休眠,win8系统设置禁止电脑休眠的教程方法
  19. flutter 上滑悬浮吸顶
  20. 【Python】爬虫入门级实战讲解:爬取商城的商品名称及价格

热门文章

  1. 微机原理及应用->微型计算机基础绪论
  2. 团建游戏----快乐大转盘
  3. 最小二乘法拟合直线(问题i)
  4. Nginx 代理https
  5. thinkphp自动生成二维码
  6. 学生每日计划表_小学生每日学习计划表格怎么制定
  7. 从“ACE交通引擎”看百度的智能交通野心
  8. 快速查看控件见的从属关系
  9. 新建一个项目,如何使用abp用户登录系统
  10. Excel破解vba密码