React生产环境打包&&后台环境运行(有跨域+无跨域)

摘要:
打包项目1,yarnrunbuild或2,npmrunbuild后,webpack将在根目录中自动生成一个构建文件,其中包含运行打包项目的相关文件&&跨域分析1)服务器端项目的独立操作:ajax请求存在跨域问题。解决方案:服务器端工程师配置代理服务器,这是一种跨域的情况。项目和服务器在不同的服务器或端口上运行。然后检查相应的流程,就会有相应的启动服务。

(1)打包项目

1、yarn run build或者2、npm run build

  打包后,webpack会自动在根目录生成build文件,里面存放着相关文件

  React生产环境打包&&后台环境运行(有跨域+无跨域)第1张

(2)运行打包项目&&跨域分析

  1) 与服务器端项目独立运行

问题: 存在 ajax 请求跨域问题
解决: 由服务器端工程师配置代理服务器(前端工程师不用亲自操作)
  这种便是有跨域情况,项目与服务端运行在不同服务器或端口下。
  这里说到一般是由后端工程师处理的,我们作为前端简单了解下。需要使用nginx工具
  React生产环境打包&&后台环境运行(有跨域+无跨域)第2张

  该工具主要用来给后端开发人员做集群的,还可以用来做代理服务器,接下来介绍下nginx实现生产环境下的服务器代理。

注意:该文件不能在中文路径下运行,所以需要注意。

  点击运行后,并不会出现运行界面,需要在任务管理器里查看。

  React生产环境打包&&后台环境运行(有跨域+无跨域)第3张

  然后查看相应进程,会有对应的启动服务。

  React生产环境打包&&后台环境运行(有跨域+无跨域)第4张

  接下来看下配置文件

  React生产环境打包&&后台环境运行(有跨域+无跨域)第5张

  React生产环境打包&&后台环境运行(有跨域+无跨域)第6张

 
  
 
 
  2) 合并到服务端项目一起运行
不再有 ajax 请求跨域问题

  这里我们采用方式2,直接将打包文件build中的文件放到node后台搭建项目的根目录下的public目录下,如下所示。这种便是无跨域情况.

  React生产环境打包&&后台环境运行(有跨域+无跨域)第7张

  直接将build下打包生成的文件放过来,然后运行项目即可正常预览

  React生产环境打包&&后台环境运行(有跨域+无跨域)第8张

  现在启动服务端,直接预览即可

  React生产环境打包&&后台环境运行(有跨域+无跨域)第9张  

  React生产环境打包&&后台环境运行(有跨域+无跨域)第10张

.

免责声明:文章转载自《React生产环境打包&&后台环境运行(有跨域+无跨域)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇c++ iterator(迭代器)分类及其使用iOS开发_开启关闭侧滑手势下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

多页应用 Webpack4 配置优化与踩坑记录

前言 最近新起了一个多页项目,之前都未使用 webpack4 ,于是准备上手实践一下。这篇文章主要就是一些配置介绍,对于正准备使用 webpack4 的同学,可以做一些参考。 webpack4 相比之前的 2 与 3,改变很大。最主要的一点是很多配置已经内置,使得 webpack 能“开箱即用”。当然这个开箱即用不可能满足所有情况,但是很多以往的配置,其实...

vue对比其他框架

对比其他框架React React 和 Vue 有许多相似之处,它们都有: 使用 Virtual DOM 提供了响应式(Reactive)和组件化(Composable)的视图组件。 将注意力集中保持在核心库,伴随于此,有配套的路由和负责处理全局状态管理的库。 性能简介 Vue 的性能是优于 React 的。如果你对此表示怀疑,请继续阅读。我们会解释为...

electron 不支持Ctrl+滚动条放大缩小,自己动手做了一个react组件

前言:功能是不难的,看过代码之后,肯定能理解,肯定。重点说明,这仅仅是为了electron打包做的需求,一般是不会有这样的需求,因为浏览器都带有这样的功能!!!说三遍!!说三遍!!说三遍!! ScrollBox.tsx import React, { useEffect, useRef, useState } from 'react' import { B...

react-native 极光推送(jpush-react-native)

极光推送官方支持的 React Native 插件 安装 npm install jpush-react-native --savenpm install jcore-react-native --save ## jpush-react-native 1.4.2 版本以后需要同时安装 jcore-react-native 一、自动配置部分(以下命令均在你的...

【react和iframe的数据通信】

业务场景,前端一个弹框中,使用iframe嵌入了一个子项目,子项目中的操作完成之后,需要关闭弹框; 关系:父组件react 页面 ,子组件 嵌入的页面 实现方案: 1.window全局定义一个事件xxx,代码块里面写关闭的方法;子项目中window.xxx 2.通过判断子项目中的某个dom元素值的变化判断子项目的交互操作状态,例如 input的value值...

webpack踩坑之路 (2)——图片的路径与打包

刚开始用webpack的同学很容易掉进图片打包这个坑里,比如打包出来的图片地址不对或者有的图片并不能打包进我们的目标文件夹里(bundle)。下面我们就来分析下在webpack项目中图片的应用场景。 在实际生产中有以下几种图片的引用方式: 1. HTML文件中img标签的src属性引用或者内嵌样式引用 <img src="photo.jpg" /&g...