用户登录

打开 .env.production 这个生产环境的环境变量文件,改一下接口的基本地址,把它设置成本地的接口地址,http://localhost:3001

在终端,项目所在目录的下面,先停止运行项目的开发服务,然后执行一下 npm run build,编译的时候会出问题,因为 Next.js 在编译的时候会请求接口获取数据,现在接口服务有问题,所以编译的时候也会出现问题。

在服务端这里,执行 docker-compose restart,重新启动一下应用的服务。

再回到 Next.js 项目,重新执行编译命令。成功以后再执行一下 npm run start ,运行编译生成的应用。然后再停止服务端的 mysql 这个服务。

在浏览器,访问一下内容页面,现在页面上会显示一条默认的错误消息,并没有显示具体的错误消息,这样做主要是为了安全。在终端可以观察具体发生的错误。

我们可以定制一下这个默认的在生产环境上显示的错误消息。

配置

先打开 app/config ,在应用的配置里面添加一个新的配置,名字是 isProduction ,它的值可以判断一下 process.env.NODE_ENV 是否等于 production。

Error

打开 posts/error ,修改一下组件的视图,可以判断一下 appConfig.isProduction,如果当前是生产环境,显示一条默认的错误信息。' 当前出了点小问题,我们会尽快解决:)' ,如果不是生产环境,就显示这个 error.message。

测试

在终端,我们还是需要先重新启动一下服务端应用。成功以后,在到 Next.js 项目这里,执行 npm run build 编译应用,再执行 npm run start 运行编译生产的应用。

再到服务端,停止一下服务端的 mysql 服务。

在浏览器,观察一下页面的显示,现在如果内容页面出问题的话,页面就会显示我们自己定制的错误信息了。

定制生产环境的错误消息《 Next.js:网络请求 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点