返回顶部
首页 > 资讯 > 精选 >webpack中的代理配置方法
  • 358
分享到

webpack中的代理配置方法

2023-07-02 13:07:14 358人浏览 泡泡鱼
摘要

这篇文章主要介绍了webpack中的代理配置方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇WEBpack中的代理配置方法文章都会有所收获,下面我们一起来看看吧。作用:解决开发环境跨域问题(不用再去配置Ngi

这篇文章主要介绍了webpack中的代理配置方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇WEBpack中的代理配置方法文章都会有所收获,下面我们一起来看看吧。

作用:

解决开发环境跨域问题(不用再去配置Nginx和host)

如果你有单独的后端开发服务器api,并希望在同域名下发送API请求,那么代理某些URL会很有用

下面介绍一下五种经常使用的场景

使用场景一:

请求到 /api/xxx 现在会被代理到请求 Http://localhost:3000/api/xxx, 例如 /api/user 现在会被代理到请求 http://localhost:3000/api/user

module.exports = {     //...     devServer: {         proxy: {             '/api': 'http://localhost:3000'        }     } };

使用场景二

多个前缀的路径,都用一个路径来代理,使用context属性

module.exports = {     //...     devServer: {         proxy: [{             context: ['/auth', '/api'],             target: 'http://localhost:3000',         }]     } };

使用场景三

将url中的 /api替换为空串:

module.exports = {     //...     devServer: {         proxy: {             '/api': {                 target: 'http://localhost:3000',                pathRewrite: {'^/api' : ''}            }         }     } };

请求到 /api/xxx 现在会被代理到请求 http://localhost:3000/xxx, 例如 /api/user 现在会被代理到请求 http://localhost:3000/user

使用场景四:

如果想要支持https,需要配置。默认情况下,不接受运行在 HTTPS(超文本传输安全协议) 上,且使用了无效证书的后端服务器

module.exports = {    //...    devServer: {        proxy: {            '/api': {                target: 'https://other-server.example.com',                 secure: false//是否验证SSL Certs            }        }    }};

使用场景五:

个人理解:如果想要请求静态html页面,绕过代理;对于api请求则保持代理

有时你不想代理所有的请求。可以基于一个函数的返回值绕过代理。

在函数中你可以访问请求体、响应体和代理选项。必须返回 false 或路径,来跳过代理请求。

例如:对于浏览器请求,你想要提供一个 HTML 页面,但是对于 API 请求则保持代理。你可以这样做:

module.exports = {   //...     devServer: {         proxy: {             '/api': {                 target: 'http://localhost:3000',                 bypass: function(req, res, proxyOptions) {                     if (req.headers.accept.indexOf('html') !== -1) {                         console.log('Skipping proxy for browser request.');                         return '/index.html';                     }                 }             }         }     }    };

解决跨域原理

上面的参数列表中有一个changeOrigin参数, 是一个布尔值, 设置为true, 本地就会虚拟一个服务器接收你的请求并代你发送该请求,

module.exports = {     //...     devServer: {         proxy: {             '/api': {                 target: 'http://localhost:3000',                 changeOrigin: true,             }         }     } };

Vue-cli中proxyTable配置接口地址代理示例

个人理解:这个配置文件会生成一个代理服务器,用于连接前端请求,向后端api服务器发送请求

修改 config/index.js

module.exports = {     dev: {     // 静态资源文件夹     assetsSubDirectory: 'static',    // 发布路径    assetsPublicPath: '/',     // 代理配置表,在这里可以配置特定的请求代理到对应的API接口     // 使用方法:https://vuejs-templates.GitHub.io/webpack/proxy.html     proxyTable: {         // 例如将'localhost:8080/api/xxx'代理到'https://wangyaxing.cn/api/xxx'         '/api': {            target: 'https://wangyaxing.cn', // 接口的域名             secure: false,  // 如果是https接口,需要配置这个参数             changeOrigin: true, // 如果接口跨域,需要进行这个参数配置         },         // 例如将'localhost:8080/img/xxx'代理到'https://cdn.wangyaxing.cn/xxx'         '/img': {             target: 'https://cdn.wangyaxing.cn', // 接口的域名             secure: false,  // 如果是https接口,需要配置这个参数            changeOrigin: true, // 如果接口跨域,需要进行这个参数配置             pathRewrite: {'^/img': ''}  // pathRewrite 来重写地址,将前缀 '/api' 转为 '/'。         }     },     // Various Dev Server settings     //可以在process.env.HOST中重写     host: 'localhost', // can be overwritten by process.env.HOST     //可以用process.env.PORT重写,如果接口被占用,会分配一个其他端口     port: 4200, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined }

更多参数

target:要使用url模块解析的url字符串
forward:要使用url模块解析的url字符串
agent:要传递给http(s).request的对象(请参阅node的https代理和http代理对象)
ssl:要传递给https.createServer()的对象
ws:true / false,是否代理websockets
xfwd:true / false,添加x-forward标头
secure:true / false,是否验证SSL Certs
toProxy:true / false,传递绝对URL作为路径(对代理代理很有用)
prependPath:true / false,默认值:true - 指定是否要将目标的路径添加到代理路径
ignorePath:true / false,默认值:false - 指定是否要忽略传入请求的代理路径(注意:如果需要,您必须附加/手动)。
localAddress:要为传出连接绑定的本地接口字符串
changeOrigin:true / false,默认值:false - 将主机标头的原点更改为目标URL

关于“webpack中的代理配置方法”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“webpack中的代理配置方法”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: webpack中的代理配置方法

本文链接: https://lsjlt.com/news/342016.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • webpack中的代理配置方法
    这篇文章主要介绍了webpack中的代理配置方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇webpack中的代理配置方法文章都会有所收获,下面我们一起来看看吧。作用:解决开发环境跨域问题(不用再去配置ngi...
    99+
    2023-07-02
  • webpack中的代理配置详解
    目录作用:使用场景一:使用场景二使用场景三使用场景四:使用场景五:解决跨域原理vue-cli中proxyTable配置接口地址代理示例更多参数作用: 1.解决开发环境跨域问题(不用再...
    99+
    2024-04-02
  • vue项目怎么实现webpack配置代理
    本文小编为大家详细介绍“vue项目怎么实现webpack配置代理”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue项目怎么实现webpack配置代理”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。webpack...
    99+
    2023-06-29
  • webpack中的optimization怎么配置
    本篇内容主要讲解“webpack中的optimization怎么配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“webpack中的optimization怎么配置”吧!webpack配置opt...
    99+
    2023-07-05
  • webpack-bundle-analyzer 插件配置使用方法
    目录一、webpack-bundle-analyzer 是什么?二、安装三、使用方法1. 作为插件使用2. 作为CLI的一个工具参考文章:一、webpack-bundle-analy...
    99+
    2023-02-07
    webpack-bundle-analyzer 插件 webpack-bundle-analyzer 配置
  • nginx配置代理的方法是什么
    配置nginx代理通常需要修改nginx的配置文件,具体步骤如下: 打开nginx的配置文件,一般在/etc/nginx/ngin...
    99+
    2024-04-02
  • webpack中如何配置babel
    小编给大家分享一下webpack中如何配置babel,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Babel是什么Babel是一...
    99+
    2024-04-02
  • 基于webpack实用配置方法有哪些
    小编给大家分享一下基于webpack实用配置方法有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1、webpack.config.js配置文件为://处理共用、通用的js var&nb...
    99+
    2024-04-02
  • nginx ingress代理websocket流量的配置方法
    目录1 概述:1.1 环境2 nginx ingress是否支持代理websocket流量3 ingress样例4 部署4.1 部署nginx ingress4.2 设置域名4.3 ...
    99+
    2024-04-02
  • vue之proxyTable代理全面配置的方法
    本篇内容介绍了“vue之proxyTable代理全面配置的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!介绍vue的proxyTable...
    99+
    2023-06-30
  • vue cli3配置image-webpack-loader方式
    目录vue cli3配置image-webpack-loader使用image-webpack-loader压缩图片报错vue cli3配置image-webpack-loader ...
    99+
    2024-04-02
  • webpack中的optimization配置示例详解
    webpack配置optimization minimizerruntimeChunknoEmitOnErrorssplitChunks 主要就是根据不同的策略来分割打包出来的bun...
    99+
    2023-02-23
    webpack配置optimization webpack optimization
  • 浅析Vue中插槽和配置代理的使用方法
    如何正确快速使用Vue中的插槽和配置代理?下面本篇文章给大家介绍一下Vue中插槽和配置代理的使用方法,希望对大家有所帮助!一,插槽1.什么是插槽让父组件可以向子组件指定位置插入html结构,也是一种组件间通信的方式,适用于父组件——>...
    99+
    2023-05-14
    配置代理 Vue 插槽
  • vue项目实现webpack配置代理,解决跨域问题
    目录webpack配置代理,解决跨域主要是这句话vue跨域问题,修改代理后仍404接口请求用法webpack配置代理,解决跨域 在config文件夹中的index.js文件配置 主要...
    99+
    2024-04-02
  • Webpack中路径配置的示例分析
    这篇文章将为大家详细讲解有关Webpack中路径配置的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。contextcontext 是 webpack 编译时的基础...
    99+
    2024-04-02
  • Centos 中设置代理的两种方法
    Centos 中设置代理的两种方法 在使用局域网时,有时在局域网内只有一台电脑可以进行上网,其他电脑只能通过配置代理的方式来上网,在Windows系统中设置代理上网相对简单,如果只需上网的话,只需在浏览器中找到网络连接,然后在局域网设置中设...
    99+
    2023-09-18
    centos 服务器 linux
  • 关于react的代理配置(可配置多个代理)
    目录react的代理配置第一种写在package.json中(不推荐)第二种 建立 setupProxy.js,注意必须是这个文件名总结react的代理配置 第一种写在package...
    99+
    2022-12-08
    react代理配置 react配置多个代理 react配置代理
  • webpack-dev-server中如何配置使用
    这篇文章给大家分享的是有关webpack-dev-server中如何配置使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1安装的WebPack-dev-server 在终端输入...
    99+
    2024-04-02
  • webpack对html文件的处理方法
    这篇文章主要讲解了“webpack对html文件的处理方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“webpack对html文件的处理方法”吧!   ...
    99+
    2024-04-02
  • 阿里云服务器反向代理的配置方法
    1. 了解反向代理 在开始配置阿里云服务器的反向代理之前,我们先来了解一下什么是反向代理。反向代理是一种服务器配置方式,它可以将客户端的请求转发到后端的多个服务器上,从而实现负载均衡和高可用性。通过反向代理,我们可以提高网站的性能和可靠性...
    99+
    2023-10-28
    阿里 服务器 方法
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作