如何停止在浏览器的开发人员工具中暴露反应的源代码?

Roh*_*wai 1 reactjs asp.net-core google-developer-tools

我正在 ASP.NET Core 和 React 中开发项目。在测试中,我遇到了一个重大的安全问题。反应的源文件在谷歌开发者工具中公开。我试图删除 webpack 源映射,但那件事对我不起作用,原因是他们没有提到我们需要在哪个 webpack 文件夹中进行更改,因为有 6 个文件夹包含 webpack。我是这个堆栈的新手,不知道如何处理这个缺陷。我该如何解决这个问题?

Google 开发者工具的屏幕截图

Roh*_*wai 7

它非常容易并且可以隐藏在开发人员工具中暴露给最终用户的完整源代码。您需要package.jsonClientApp文件夹更新文件。

更新前

    "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",    //UPDATE THIS LINE
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
    }
Run Code Online (Sandbox Code Playgroud)

您需要使用以下代码而不是上面的代码:

更新后

    "scripts": {
    "start": "react-scripts start",
    "build": "rimraf ./build && react-scripts build && rimraf ./build/**/*.map",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
    }
Run Code Online (Sandbox Code Playgroud)

上面的代码对我有用。这个线程帮助我实现了我的目标。有关更多详细信息,您也可以查看。


小智 7

我遇到过同样的问题。我就是这样解决的。.env在文件夹中创建一个名为的文件src,然后添加此代码GENERATE_SOURCEMAP=false。然后运行npm run build​​或yarn run build. 这为我解决了这个问题