全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

node实现简单的反向代理服务器

每当提起反向代理器,人们通常一想到的就是 Nginx,但是今天我们暂时忽略大名鼎鼎的 Nginx,采用同样也是使用单线程、事件循环的服务端小弟——Node 来达成

跨域问题是前端开发很常见的问题

解决方案有很多种

  1. jsonp返回
  2. Access-Control-Allow-Origin:'*' (需要注意的是 对于post请求会变成option请求需求后端支持)
  3. 前端添加代理

前端添加代理

以vue-cli为例,前端添加代理

dev: {
  env: require('./dev.env'),
  port: 8888,
  autoOpenBrowser: true,
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  proxyTable: {
   '/api':{
    target: 'http://localhost:3000',
    changeOrigin: true,
   }
  }

其中'/api'为接口的前缀,target为后端服务地址

前端请求示例

vm.$http.post('/api/reg', JSON.stringify(info)).then(() => {

 }, () => {

 });

反向代理

反向代理可以理解为指定一个服务地址为内部服务器地址。

为什么需要反向代理

如果只是作为接口请求,其实前端搭建代理服务器就可以了,但是代理服务器并不能满足所有的日常开发。

比如说单点登录的实现,需求服务端做302跳转。但是前端文件没有部署到后端服务器时,set-cookie是不能成功种下cookie登录信息的。

这就需要在后端服务器添加反向代理。

示例如下

const http = require('http');
const httpProxy = require('http-proxy');
const proxy = httpProxy.createProxyServer();
const proxyServer = http.createServer((req, res) => {
 proxy.web(req, res, {
  target: 'http://localhost:8888',
 });
});
proxyServer.listen(8088, () => {
 console.log('proxy server is running ');
});

这样前端开发就可以在8088端口了,当然热加载功能是在前端服务器的8888端口

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# node  # 反向代理  # nodejs  # 实现反向代理  # 详解node.js搭建代理服务器请求数据  # 如何用nodejs搭建代理服务器  # node.js使用 http-proxy 创建代理服务器操作示例  # NodeJS中配置请求代理服务器方式  # 后端  # 单点  # 代理服务器  # 服务端  # 就可以  # 的是  # 是在  # 这就  # 问题是  # 大名鼎鼎  # 为例  # 跳转  # 一想到  # 能满足  # 需要注意  # 大家多多  # 单线程  # 种下  # 加载  # 有很多种 


相关文章: 如何快速辨别茅台真假?关键步骤解析  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何通过西部数码建站助手快速创建专业网站?  如何通过网站建站时间优化SEO与用户体验?  建站ABC备案流程中有哪些关键注意事项?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  宝塔面板如何快速创建新站点?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  python的本地网站制作,如何创建本地站点?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  宁波自助建站系统如何快速打造专业企业网站?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  如何解决ASP生成WAP建站中文乱码问题?  建站之星后台管理系统如何操作?  潮流网站制作头像软件下载,适合母子的网名有哪些?  如何在Windows 2008云服务器安全搭建网站?  建站之星×万网:智能建站系统+自助建站平台一键生成  建站之星在线客服如何快速接入解答?  如何挑选优质建站一级代理提升网站排名?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  如何在Golang中使用replace替换模块_指定本地或远程路径  实现虚拟支付需哪些建站技术支撑?  如何快速搭建响应式可视化网站?  广东企业建站网站优化与SEO营销核心策略指南  定制建站哪家更专业可靠?推荐榜单揭晓  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  如何撰写建站申请书?关键要点有哪些?  魔方云NAT建站如何实现端口转发?  招商网站制作流程,网站招商广告语?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  北京网站制作公司哪家好一点,北京租房网站有哪些?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  如何选择CMS系统实现快速建站与SEO优化?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  建站之星ASP如何实现CMS高效搭建与安全管理?  常州企业网站制作公司,全国继续教育网怎么登录?  如何生成腾讯云建站专用兑换码?  如何在阿里云服务器自主搭建网站?  专业网站建设制作报价,网页设计制作要考什么证?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  如何设置并定期更换建站之星安全管理员密码?  装修招标网站设计制作流程,装修招标流程?  如何通过建站之星自助学习解决操作问题?  如何挑选高效建站主机与优质域名?  再谈Python中的字符串与字符编码(推荐)  网站制作新手教程,新手建设一个网站需要注意些什么?  ui设计制作网站有哪些,手机UI设计网址吗?  Android自定义listview布局实现上拉加载下拉刷新功能 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。