From 9cb2dde54bc4b12984c3638ab12827e7cdeec5e4 Mon Sep 17 00:00:00 2001 From: ShawnPhang Date: Mon, 4 Sep 2023 11:11:22 +0800 Subject: [PATCH] docs: update readme --- screenshot/README.md | 17 +++++++++++------ screenshot/src/service/screenshots.ts | 6 +++--- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/screenshot/README.md b/screenshot/README.md index dc4a981..6533f6a 100644 --- a/screenshot/README.md +++ b/screenshot/README.md @@ -3,7 +3,7 @@ 目录结构比较简单,主要就实现了三个接口,其中 `api/screenshots` 即是项目中所使用到的图片生成接口,在真实生产项目中可以把该服务单独部署,于内网调用,这样利于做一些鉴权之类的处理。 -另外 `api/printscreen` 这个接口实现的是网页截图的 API,该接口可以传入一个 URL 对整个网页进行截图,本项目中没有使用到此接口。 +另外 `api/printscreen` 这个接口实现的是网页截图的 API,该接口可以传入一个 URL 对整个网页进行截图,可用于合成长图分享海报等场景,本项目中没有使用到此接口。 ### 安装依赖 @@ -19,22 +19,25 @@ #### 打包说明 -由于项目依赖在打包时会出现许多未知错误,所以在 **webpack.config.js** 中过滤掉了依赖,打包出来的文件会非常小因为只包含项目代码,需要将 `package.json` 放到服务器上安装依赖来使用,具体的做法类似以下步骤: +直接打包可能会出现未知错误,本项目在 **webpack.config.js** 中过滤掉了依赖(打包出来的文件会非常小因为只包含项目代码),建议将 `package.json` 放到服务器上主动安装依赖来使用,具体的做法类似以下步骤: 1. 将项目中的 `package-build.json` 上传到服务器中,重命名为 `package.json` 2. 目录下执行 `yarn` 安装依赖 -3. 将打包的 `dist/server.js` 放在同个目录中 -4. `pm2 start server.js` 服务启动 +3. 执行 `npm run build` +4. 将打包的 `dist/server.js` 放在 `node_modules` 同级目录中 +5. 使用 `pm2 start server.js` 启动并守护服务 ### 服务器配置 -在 Linux 环境下,npm 自动安装的 Chrome 浏览器有可能会出错,所以推荐从外部安装好浏览器,再给项目中的配置文件 `src/config.ts` 设置好路径,例如: +在 Linux 环境下推荐主动安装浏览器,再给项目中的配置文件 `src/config.ts` 设置好路径: ```js exports.executablePath = '/opt/google/chrome-unstable/chrome' ``` -一些可能用到的 linux 命令参考: +> `/opt/google` 为默认路径,一般不会变动 + +一些可能用到的 linux 命令参考(Debian GNU/Linux 9): ```shell google-chrome --version # 查看浏览器版本号 @@ -42,6 +45,8 @@ apt-get update apt-get install -y google-chrome-stable // 安装最新稳定版谷歌浏览器 ``` +> 其它系统自行搜索如何安装Chrome,推荐使用Docker部署,本项目部署[参考说明](https://xp.palxp.com/#/articles/1689319644311?id=docker%e5%ae%b9%e5%99%a8)。 + ### 生成 API 文档 `build:apidoc` \ No newline at end of file diff --git a/screenshot/src/service/screenshots.ts b/screenshot/src/service/screenshots.ts index f0c26e3..3bce204 100644 --- a/screenshot/src/service/screenshots.ts +++ b/screenshot/src/service/screenshots.ts @@ -2,8 +2,8 @@ * @Author: ShawnPhang * @Date: 2020-07-22 20:13:14 * @Description: - * @LastEditors: 侯超委 houchaowei@zhihu.com - * @LastEditTime: 2023-09-01 14:51:23 + * @LastEditors: ShawnPhang + * @LastEditTime: 2023-09-04 10:54:52 */ const { saveScreenshot } = require('../utils/download-single.ts') const uuid = require('../utils/uuid.ts') @@ -117,7 +117,7 @@ module.exports = { queueRun(saveScreenshot, url, { width, height, path, thumbPath, size, quality, prevent, ua, devices, scale, wait }, sign) .then(() => { if (!res.headersSent) { - res.setHeader('Content-Type', 'image/jpg') + // res.setHeader('Content-Type', 'image/jpg') // const stats = fs.statSync(path) // res.setHeader('Cache-Control', stats.size) res.json({ code: 200, msg: '截图成功', data: { path, thumbPath } })