打造性能服务器图片,详解用node-images打造简易图片服务器.pdf

2023-05-16

详详解解用用node-images 打打造造简简易易图图片片服服务务器器

Edit:2016-5-11 修正了代码里面一些明显的错误,并发布在 aj axj s 之中,源码在这里。

Edit:2016-5-24 加入 HEA D 请求,检测图片大小。如果小于 80kb 则无须压缩,返回 302 重定向。

node HEA D 请求

var http = require('http');

var url = require('url');

var siteUrl = url.parse('http:/view/pics/hv1/42/8 /2 65/134297 67

.jpg ');

request = http.request({

method : 'HEAD',

port: siteUrl.port || 8 ,

host: siteUrl.host,

path : siteUrl.pathname

});

request.on('response', function (response) {

response.setEncoding('utf8');

console.log(response.headers['content-length']);

});

request.end();

必须先赞下国人 npm 作品:node-images (https: zhangyuanwei node-images ),封装了跨平台的 C++ 逻辑

,形成 nodej s A PI 让我们这些小白愉快地使用。之前用过 GraphicsMagick for nodej s,功能最强大,但包体积也比较大,依赖

度高,最近好像还爆出了漏洞事件。node-images 相比 GM,主要是更轻量级,无需安装任何图像处理 。

安装 node-images:

npm install images

npm 包比较大,node_modules 里面有个 node-images.tar.gz 压缩包,下载完之后可以删掉,但剩余也有 11mb。

图片服务器,当前需求是:一个静态服务器,支持返回 j pg png gif 即可;支持 HTT P 缓存;支持指定图片分辨率;支持远程图

片加载。加载远程图片,可通过设置 maxLength 来限制图片文件大小。

实施过程中,使用 Step.j s 参与了异步操作,比较简单。

服务器的相关配置:

// 配置对象。

var staticFileServer_CONFIG = {

'host ': '127. . .1', // 服务器地址

'port ': 3 , // 端口

'site_base': 'C:/project/bigfoot ', // 根目录,虚拟目录的根目录

'file_expiry_time': 48 , // 缓存期限 HTTP cache expiry time, minutes

'directory_listing ': true // 是否打开 文件 列表

};

请求例子:

http: localhost:3001 asset coming_soon.j pg?w =300

http: localhost:3001 asset coming_soon.j pg?h=150

http: localhost:3001 asset coming_soon.j pg?w =300&h=150

http: localhost:3001 ?url=http: s0.hao 123 res img logo logonew .png

完整源码:

const

HTTP = require('http'), PATH = require('path'), fs = require('fs'), CRYPTO = require(

'crypt

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

打造性能服务器图片,详解用node-images打造简易图片服务器.pdf 的相关文章

  • 用java将图像写入pdf文件

    我正在编写一个代码 将 Microsoft power point ppt 幻灯片转换为图像 并将生成的图像写入 pdf 文件 以下代码生成图像并将其写入 pdf 文件 但我面临的问题是 当我将图像写入 pdf 文件时 它的大小超出了 pd
  • 如何生成不带绿色复选标记的签名 PDF

    我正在使用 iText 签署 PDF 我在签名中添加了图形 这是可行的 但是验证文档时显示的绿色复选标记 或黄色问号 会干扰我插入的图形 使最终结果看起来很难看 它要么显示在签名图形的上方或下方 但我无法让它消失 有谁知道如何解决这一问题
  • Schmooze:: 使用 grover gem 转换 html2pdf 时处理失败+

    respond to do format format html format pdf do grover Grover new http localhost 3000 generate report format A4 pdf grove
  • 如何将 HTML 和 CSS 添加到 PDF 中 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个 HTML 不是 XHTML 文档 可以在 Firefox 3 和 IE 7 中很好地呈现 它使
  • 生成 PDF 格式的 Crystal 报告...如何在新选项卡或页面中打开?

    我编写了一段代码来生成 PDF 格式的 Crystal Reports 报告 但是它在用户进行搜索并单击按钮的同一页面中打开 有什么方法可以在新选项卡或页面中打开 PDF 我的代码是 private void OpenPDF ReportD
  • 如何在 Microsoft Surface 应用程序中显示 PDF 文档?

    我想在我的 Microsoft Surface 应用程序中显示 PDF 文档 我做了一些搜索 发现了很多可能性 但如果在 Microsoft Surface 中使用 所有这些似乎都有一些缺点 这个有趣的 http www screencas
  • 在 Python 中为现有 PDF 创建大纲/目录

    我正在使用 pyPdf 将多个 PDF 文件合并为一个 这很好用 但我还需要向生成的 PDF 文件添加目录 大纲 书签 pyPdf 似乎只支持读取大纲 Reportlab 允许我创建它们 但开源版本不支持加载 PDF 文件 因此无法向现有文
  • PHP:PDF 生成

    我目前正在一个网站上工作 基本上 当用户搜索某些内容时 我应该能够为每个搜索结果项生成 pdf 我知道 fpdf 的一种选择 有没有比 fpdf 更简单的东西或某些服务 例如如果我发送搜索结果页面的 url 它会将生成的 pdf 发送回给我
  • 是否有 wkhtmltopdf 选项可以转换 html 文本而不是文件?

    我最近偶然发现了 wkhtmltopdf 发现它是在浏览器中将 html 即时转换为 pdf 的绝佳工具 典型的用法 在 Windows 中 是 wkhtmltopdf exe some option div Some html b for
  • 使用 Python 进行 requests.get() 后 PDF 文件损坏

    我正在尝试使用 requests get 下载 PDF 文件 它适用于我发现的大多数测试 PDF 文件 但对于本例则不起作用 并且文件已损坏 如果我用浏览器打开 URL 并保存文件 它就可以正常工作 我尝试使用 Stream 分块下载它 但
  • 使用 Tabula 从 PDF 中提取表格

    我遇到了一个名为 Tabula 的很棒的图书馆 它几乎成功了 不幸的是 第一页上有很多无用的区域 我不希望 Tabula 提取这些区域 根据文档 您可以指定要从中提取的页面区域 但是 无用区域仅位于 PDF 文件的第一页 因此 对于所有后续
  • Amazon S3 中的 PDF 无法在 Chrome 中打开查看

    我有一个用 PHP 开发并托管在亚马逊服务器上的网站 服务器上传的 PDF 文件无法在 Chrome 浏览器中打开查看 但此 pdf 文件可以在其他浏览器 Internet Explorer 中打开查看 在chrome中它是下载的 我希望此
  • PDF 文档可以包含不同 DPI 的图像吗?

    这个问题说明了一切 是否有包含不同 dpi 每英寸点数 图像的 PDF 文档 或者是否假设如果我知道一张图像的 dpi 我就知道整个文档的 dpi 我赞成 ypnos的回答 这是完全正确的 但我想通过展示一个最近的新功能来补充它pdfima
  • 如何以编程方式填写pdf文件? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Knit 无法编译 PDF:“工具中出现错误::file_path_as_absolute(output_file)”

    我已经在 markdown 中创建了一个报告并使用该函数render 将代码编译成 PDF 一个月前它工作得很好 但是当我现在运行代码时 它给了我一个错误 Latexmk 这是 Latexmk 约翰 柯林斯 2016 年 4 月 22 日
  • 将多页 PDF 转换为单个图像

    我必须将多页 PDF 文档转换为 png 图像 我尝试使用 ImageMagick 但无法获得最终结果 convert document pdf document png or convert adjoin document pdf doc
  • 保存 PDF 时的 matplotlib 线宽

    我有一个具有一些对线宽敏感的相当微妙的特征的图形 我想将此图保存为可以轻松打印的 PDF 即接收器端无需缩放 只需 Command P 即可 不幸的是 当我设置 Figsize 8 5 11 以便正确调整 PDF 的打印大小时 matplo
  • 使用 iTextSharp 和 PDFStamper 在 PDF 中使用不同的字体

    我正在使用 iTextSharp 加载现有 PDF 并使用 PdfStamper 添加文本 我想要完全控制文本 这意味着我想要能够控制字体 仅限 TrueType 字体大小和坐标 现在 我使用 ShowTextAligned 将文本添加到某
  • 合并 PDF,同时保留自定义页码(也称为页面标签)和书签

    我正在尝试自动合并多个 PDF 文件 并且有两个要求 a 现有书签和 b 需要保留页面标签 自定义页码 默认情况下 PyPDF2 和 pdftk 会在合并时保留书签 但 pdfrw 不会 PyPDF2 pdftk 或 pdfrw 中始终不保
  • 打开 PDF 或文件夹

    我尝试打开在 Flash Player 中运行的 swf 应用程序中通过鼠标单击触发的 PDF 或文件夹 在查找器 资源管理器中 通过 urlRequest 打开 PDF 和navigateToUrl 总是打开浏览器 我读到this htt

随机推荐