分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

webpack-dev-server proxy代理

发布时间:2023-09-06 01:33责任编辑:沈小雨关键词:webpack

一个最简单的代理例子:index.html中有如下代码

fetch(‘/api/pub/article/list?pageSize=2‘).then((data)=>{ ???return data.json()}).then((json)=>{ ???console.log(json)})

里面访问的是相对地址,但我本地并没有服务器有提供这些api。把以上的路径补全为云服务器上的绝对路径,但是又报CORS错误。

解决办法是配置一个代理。这里通过webpack-dev-server实现,简单的配置文件如下:

module.exports = { ?entry: { ?????bundle:‘./main.js‘, ?}, ?output: { ???filename: ‘[name].js‘ ?}, ???devServer: { ???????port: 8889, ???????host: ‘127.0.0.1‘, ???????proxy: { ???????????‘/api/*‘: { ???????????????target: ‘http://123.207.95.11:9001‘ ???????????} ???????} ???}};

接着运行(以当前目录作为静态文件的根目录):

webpack-dev-server --content-base ./

访问 http://127.0.0.1:8889/index.html ,以上代码可以正常执行了。

对于以上的配置和运行指令,做了如下事情:

  1. 监听 127.0.0.1:8889,以当前目录(content-base参数指令的目录)作为静态文件的根目录
  2. 访问index.html,里面发出的请求是相对地址,也就是访问了这个地址 127.0.0.1:8889/pub/..... 
  3. 因为webpack-dev-server读取以上的配置文件,这个请求匹配了 /api/* ,就把这个请求转发到了对应的target处,也就是http://123.207.95.11:9001这个地址下了。也就是请求 浏览器 -> webpack-dev-server -> 127.207.95.11 。
  4. 最后把响应数据传递到浏览器。  也就是 127.207.95.11 -> webpack-dev-server -> 浏览器

webpack-dev-server proxy代理

原文地址:https://www.cnblogs.com/hellohello/p/8157791.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved