使用Node.js和Express搭建图片缓存服务或应用服务器

使用Node.js和Express生成缩略图:
复制代码
const express = require('express');
const sharp = require('sharp');
const app = express();
const port = 3000;
 
app.get('/thumbnail/:filename', async (req, res) => {
    const filename = req.params.filename;
    const imagePath = `/path/to/images/${filename}`;
    sharp(imagePath)
        .resize(100, 100) // 设置缩略图尺寸
        .toBuffer()
        .then(data => {
            res.type('jpeg'); // 根据需要设置正确的MIME类型
            res.send(data);
        })
        .catch(err => {
            console.error(err);
            res.status(500).send('Error generating thumbnail');
        });
});
 
app.listen(port, () => {
    console.log(`Thumbnail server running at http://localhost:${port}`);
});

配置nginx反向代理

复制代码
location /thumbnail/ {
    proxy_pass http://localhost:3000/; # Node.js应用地址
    proxy_set_header Host $host; # 传递主机头信息到后端服务器
    proxy_set_header X-Real-IP $remote_addr; # 传递客户端IP地址到后端服务器
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 传递X
}
相关推荐
智通11 小时前
Node.js事件循环核心机制
node.js
初圣魔门首席弟子15 小时前
Node.js 详细介绍(知识库版)
windows·qt·node.js·知识库
糖拌西瓜皮15 小时前
Java 开发者如何快速上手 Node.js:一份从入门到进阶的学习路线
node.js
yspwf16 小时前
NestJS 配置管理完整方案
后端·架构·node.js
网络点点滴16 小时前
Node.js事件驱动架构
架构·node.js
weixin_4713830318 小时前
Node.js + Express 入门实战笔记-01-基础
node.js·lua·express
铁打的阿秀2 天前
SQL server2025 Express安装及管理工具安装使用教程(Windows)
windows·sqlserver·express
Rain5092 天前
2.2 数据基础:数据库集成与 ORM(TypeORM / Prisma)
数据库·人工智能·ai·数据分析·node.js·自动化·ai编程
大家的林语冰2 天前
npm 不忍了,正式上线“阶段式发布“的新功能,进一步对抗频繁的供应链攻击!
前端·javascript·node.js
代码搬运媛2 天前
Express 入门到精通笔记
笔记·express