reactjs - 使用 firebase 部署 React 应用程序时如何隐藏源代码?

标签 reactjs firebase deployment google-chrome-devtools hosting

这是我在 stackoverflow 上的第一篇文章。我写信是因为我找不到问题的明确答案。我不知道标题是否正确,但我就是这样。

情况: 我正在使用 React 创建一个单页面应用程序,并打算使用 Node.js 和 Express.js 构建后端,但现在它只是 React。我使用 create-react-app 创建项目,并使用 Firebase 进行托管。
firebase.json 文件中要部署的文件夹设置为 build。因此,当我想将 Web 应用程序部署到 Firebase 时,我首先使用 npm run build 命令创建将要部署的构建文件夹。

当我访问我的网站时,打开 Chrome 开发人员工具并单击源代码,我可以在 static 文件夹中看到我的所有文件。我看到的就是我格式化它的方式,就像我在代码编辑器中一样。所有组件。我的整个文件夹结构。基本上我的应用程序的整个代码都是完整可见的。
我有点震惊和困惑,所以我检查这是否正常。我访问了 YouTube 或 Twitter 等大型网站,但在他们的源文件夹中几乎找不到任何内容。当我查看 Twitter 的源代码时,它确实有一些文件,这些文件只是简单且开放的 JavaScript,但不是很多。而且文件夹结构也不可见。我需要使用 Ctrg + P 查看文件。大多数文件看起来也不同等等。
最好只查看开发工具中 Twitter 的源代码部分。我不太明白我所看到的内容,但我注意到它与我网站的来源相比有所不同。
他们的 webpack 不知怎的并没有将包映射成简单可读的代码。我在构建文件夹中的 bundle 被映射到捆绑之前的样子。至少在我看来是这样。

简单而简短:我网站的源代码按原样显示了所有内容(所有文件),供每个人查看。大网站的来源它不这样做。他们的 secret 以某种方式被隐藏了。我想知道他们做了什么、如何做以及我怎样才能做同样的事情。

我看到很多人说如果没有安全风险并不重要,而且我对混淆有所了解,但我相信他们也做了其他事情。
我还想强调,这不是我是否需要这样做的问题。我想做,但现在不知道如何做或做什么。我还没有找到任何地方可以完全解决这个问题,所以我真的不明白它是如何完成的。

我很感谢我能得到的任何帮助。

最佳答案

GENERATE_SOURCEMAP=false 放入 package.json scripts -> builds 中,然后运行 ​​npm run build 。希望它能发挥作用。

"scripts": {
    "build": "GENERATE_SOURCEMAP=false react-scripts build"
}

检查此引用How to disable source maps for React JS Application

关于reactjs - 使用 firebase 部署 React 应用程序时如何隐藏源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63687598/

相关文章:

javascript - 即使已安装类, react 子类也会接收未定义的 Prop

android - com.google.android.gms :play-services-base compile and runtime collision in react native

swift - 在 TableView Controller 中按列分隔对象

gwt - EC2 : can I host an http server there?

debugging - 生产环境中出现无法在开发环境中复制的错误是否正常?

reactjs - Webpack 检查文件是否存在并导入

javascript - 如何从随机 uint8array 渲染图像

javascript - 我不知道如何从 fetch 中正确获取数据

Docker Compose 持续部署设置

javascript - 如何使用 Firebase 实时数据库和 React Native 上传图像/文件?