返回顶部
首页 > 资讯 > 服务器 >如何用nodejs搭建代理服务器
  • 588
分享到

如何用nodejs搭建代理服务器

nodejs代理服务器nodejs代理nodejs搭建代理服务器 2022-11-13 14:11:17 588人浏览 八月长安
摘要

目录代理服务器的原理案例搭建代理服务器解决跨域问题原理解释代理服务器的原理 案例 安装 express、Http-proxy-middleware app.js 文件 node a

代理服务器的原理

案例

安装 express、Http-proxy-middleware

app.js 文件 node app.js

var express = require('express');
var app = express();
app.use(express.static('./public'));
app.listen(3000);

在 public 文件夹下建立 a.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button onclick="Click()">点击发送请求</button>
    <script src="https://unpkg.com/axiOS/dist/axios.min.js"></script>
    <script>
        function Click() {
             axios('http://localhost:5000/b')
                 .then(function(res) {
                     console.log(res);
                 });
        }
    </script>
</body>
</html>
</body>
</html>

搭建接口服务器,接口服务器端口号 5000

node interface.js

var express = require('express');
var app = express();

app.get("/", (req, res) => {
    res.send("123");
});

app.get("/api/a", (req, res) => {
    res.send("a");
});

app.get("/b", (req, res) => {
    console.log(req.headers);
    res.send("b");
});

app.listen(5000);

访问http://localhost:3000/a.html

搭建代理服务器解决跨域问题

更改 app.js

var express = require('express');
var proxy = require('http-proxy-middleware');
var app = express();
app.use(express.static('./public'));

app.use('/api', proxy.createProxyMiddleware({
    target: 'http://localhost:5000',
    changeOrigin: false,
    pathRewrite: {
        "^/api": ""
    }
}));
app.listen(3000);

更改 a.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button onclick="Click()">点击发送请求</button>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script>
        function Click() {
            // axios('http://localhost:5000/b')
            //     .then(function(res) {
            //         console.log(res);
            //     });

            axios('/api/b')
                .then(function(res) {
                    console.log(res);
                });
        }
    </script>
</body>
</html>
</body>
</html>

访问 http://localhost:3000/a.html

原理解释

将 a.html 请求地址改为 /api/b,那么发送请求的时候会自动补上主机和端口号http://localhost:3000

所以请求发送到了3000端口

参数含义

  • target: 转发到的目标地址
  • changeOrigin: 是否更改host。默认为false,不重写

true

false

  • pathRewrite:路径重写(在这里是去掉’api’)

最终请求被转发到了 http://localhost:5000/b

app.get("/b", (req, res) => {
    console.log(req.headers);
    res.send("b");
});

整个过程就像这样

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 如何用nodejs搭建代理服务器

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

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

猜你喜欢
  • 如何用nodejs搭建代理服务器
    目录代理服务器的原理案例搭建代理服务器解决跨域问题原理解释代理服务器的原理 案例 安装 express、http-proxy-middleware app.js 文件 node a...
    99+
    2022-11-13
    nodejs 代理服务器 nodejs 代理 nodejs搭建代理服务器
  • Nodejs如何搭建Web服务器
    使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块、文件系统、url解析模块、路径解...
    99+
    2022-06-04
    服务器 Nodejs Web
  • Nodejs如何搭建wss服务器
    这篇文章主要介绍了Nodejs如何搭建wss服务器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。本文为大家分享了Nodejs搭建wss服务器...
    99+
    2024-04-02
  • 如何搭建nodejs http服务器
    这篇文章主要介绍如何搭建nodejs http服务器,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!搭建简单的nodejs服务器通过一些简单配置我们就可以搭建一台基于nodejs的ht...
    99+
    2024-04-02
  • 如何搭建nodejs服务
    这篇文章给大家分享的是有关如何搭建nodejs服务的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下搭建nodejs服务器步骤:1.安装nodejs服务(从官网下载安装)...
    99+
    2024-04-02
  • 如何使用nodejs搭建websocket服务器
    这篇文章给大家分享的是有关如何使用nodejs搭建websocket服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 简单开始1.安装node。https://no...
    99+
    2024-04-02
  • 如何搭建Socks5代理服务器
    要搭建Socks5代理服务器,可以按照以下步骤进行:1. 准备一个用于搭建代理服务器的主机,可以是物理服务器或者云服务器。2. 确保...
    99+
    2023-09-21
    Socks5 代理服务器
  • 用nodejs搭建websocket服务器
    简单开始 1.安装node。https://nodejs.org/en/ 2.安装ws模块 ws:是nodejs的一个WebSocket库,可以用来创建服务。 https://github.com/we...
    99+
    2022-06-04
    服务器 nodejs websocket
  • ubuntu中如何搭建代理服务器
    在Ubuntu中搭建代理服务器可以使用Squid软件。以下是在Ubuntu上搭建Squid代理服务器的步骤: 安装Squid软件:...
    99+
    2024-04-02
  • 搭建代理服务器
    搭建代理服务器 搭建代理服务器场景ccproxy进行搭建代理服务器proxifier配置代理服务器总结 搭建代理服务器 有这种情况,在家需要访问某个内网环境,但是内网的ip从外网是访问不到的,这种需要怎么处理呢? 答案是使用...
    99+
    2023-08-18
    网络 运维 服务器
  • 如何使用nodeJS搭建本地文件服务器
    这篇文章主要介绍了如何使用nodeJS搭建本地文件服务器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。搭建nodejs服务器步骤:1.安装n...
    99+
    2024-04-02
  • Linux下如何搭建Squid代理服务器
    这篇文章给大家分享的是有关Linux下如何搭建Squid代理服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Squid是基于Unix的代理服务器(proxy server),它缓存比起点源点更接近请求者的互联...
    99+
    2023-06-28
  • linux中如何搭建http代理服务器
    这篇文章主要介绍了linux中如何搭建http代理服务器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。安装 TinyProxyyum -y install tinyproxy...
    99+
    2023-06-28
  • 阿里云服务器如何搭建代理
    阿里云服务器可以通过多种不同的代理方式搭建,下面是一些常见的代理搭建方式: Google Social Services Center(SSC):这是国内知名的社交网络GSRC中的一个代理,可以通过代理访问GSRC服务器。 Zephyr...
    99+
    2023-10-26
    阿里 服务器
  • 云服务器搭建代理
    云服务器搭建代理是指为企业提供虚拟化云平台的服务器租用服务。企业可以将自己的数据中心作为云服务器的一部分,并根据需要将其托管到多个云服务器服务提供商中。通过云服务器搭建代理,企业可以获得更低的租用费用和更快的部署速度,从而提高效率和灵活性。...
    99+
    2023-10-25
    服务器
  • Linux系统如何搭建Squid代理服务器
    这期内容当中小编将会给大家带来有关Linux系统如何搭建Squid代理服务器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Squid简介:Squid是基于Unix的代理服务器(proxy server),...
    99+
    2023-06-28
  • 云服务器如何搭建共享代理ip
    要搭建一个共享代理IP的云服务器,您可以按照以下步骤进行操作:1. 选择一个云服务器提供商,并购买一个云服务器实例。2. 登录到您的...
    99+
    2023-08-08
    云服务器
  • 阿里云服务器如何搭建代理ip
    首先,选择一个适合自己的阿里云服务器需要考虑多方面的因素。首先,要考虑的是自己的应用场景,如果你的应用场景需要高可用性和弹性伸缩,那么选择一个配置高的ECS服务器将会非常有帮助。如果你的应用场景是一个数据库集群,那么选择一个弹性强大的ECS...
    99+
    2023-10-28
    阿里 服务器 ip
  • 如何搭建阿里云代理ip服务器
    首先,在搭建阿里云代理ip服务器时,我们需要确定阿里云的代理ip服务器的主机ip地址和端口号。这些信息可以通过阿里云官方提供的搭建代理ip服务器的工具进行获取。 接着,我们需要选择合适的阿里云代理ip服务器的配置。配置阿里云代理ip服务器...
    99+
    2023-10-27
    阿里 服务器 ip
  • 阿里云服务器如何搭建代理服务器网络
    阿里云服务器搭建代理服务器网络的具体步骤如下: 选择适合的云服务器品牌 阿里云的服务器品牌众多,因此在购买服务器之前一定要仔细了解品牌,并根据自己的需求来选择合适的型号。 准备好相关配置文件 阿里云服务器的配置文件可以从官方网站获取,例...
    99+
    2023-10-26
    阿里 代理服务器 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作