Node.js 节点使用url调整图像大小而不保存图像

Node.js 节点使用url调整图像大小而不保存图像,node.js,image,image-resizing,Node.js,Image,Image Resizing,我有一个服务,它将FB图像url作为参数,检查它是否是返回图像的有效url,然后如果所有检查都已通过,则返回url。我想添加一个步骤来调整图像大小,如果这些参数也被传入,然后通过url返回调整大小的图像,就像我以前做的那样 至少可以说,我对图像处理的经验很少,但到目前为止,我的理解是使用sharp之类的库,调整大小,将新大小的图像保存到某个位置,然后将新url返回到图像位置 这似乎是最合乎逻辑的方法。但是,我想知道如果我不想在任何地方托管这些调整大小的图像,可能的解决方案是什么。还有别的办法吗?

我有一个服务,它将FB图像url作为参数,检查它是否是返回图像的有效url,然后如果所有检查都已通过,则返回url。我想添加一个步骤来调整图像大小,如果这些参数也被传入,然后通过url返回调整大小的图像,就像我以前做的那样

至少可以说,我对图像处理的经验很少,但到目前为止,我的理解是使用sharp之类的库,调整大小,将新大小的图像保存到某个位置,然后将新url返回到图像位置

这似乎是最合乎逻辑的方法。但是,我想知道如果我不想在任何地方托管这些调整大小的图像,可能的解决方案是什么。还有别的办法吗?或者我以前的理解是否已经走上正轨


facebook的url示例如下:
https://scontent.xx.fbcdn.net/v/t1.0-9/16473924_10154471006092746_6242863207915608429_n.jpg?oh=4d7fb8fb162c0ff036810ee2969703f0&oe=5A25EE1C

基于问题标题:

节点使用url调整图像大小而不保存图像

我认为您正在尝试根据对“服务”的请求操作一个图像,然后将其发送回后期处理,而不必存储它并使用磁盘空间

[
JIMP
]在不保存到磁盘的情况下获取、调整图像大小并返回图像: 在本例中,当请求服务器根“/”时,它会获取一个映像,调整其大小并将其作为响应发送回,而无需将其存储在磁盘中

const imgURL = "https://ichef.bbci.co.uk/news/660/cpsprodpb/37B5/production/_89716241_thinkstockphotos-523060154.jpg";
const express = require('express'); const app = express()
var Jimp = require("jimp")
app.get('/',function(req, res){
  Jimp.read(imgURL, function(err,img){
    if (err) throw err;
    img.resize(32, 32).getBase64( Jimp.AUTO , function(e,img64){
        if(e)throw e
        res.send('<img src="'+img64+'">')
    });
  });
});
app.listen(3000);
const imgURL=”https://ichef.bbci.co.uk/news/660/cpsprodpb/37B5/production/_89716241_thinkstockphotos-523060154.jpg";
const express=require('express');const app=express()
var Jimp=需要(“Jimp”)
app.get('/',函数(req,res){
Jimp.read(imgURL,function(err,img){
如果(错误)抛出错误;
img.resize(32,32).getBase64(Jimp.AUTO,function(e,img64){
如果(e)抛出e
res.send(“”)
});
});
});
app.listen(3000);

调整图像大小、丢弃已调整大小的图像然后返回URL以获取图像是没有意义的。当请求URL时,您只需再次创建图像即可返回。所以,我完全不清楚你到底在寻求什么帮助。@jfriend00谢谢你的评论。我认为我对自己的图像处理经验的披露已经足够了,同时我还概述了我的逻辑解决方案,但考虑到我在图像处理方面的经验,我想知道是否有什么可以做的事情是我不知道的。这就是说,要完全清楚,答案可能是a)是的,你以前的理解是正确的,因为没有其他选择,或者b)尝试这个选择。所以这是一个很棒的交流和学习的地方,这就是我正在尝试做的。如果你觉得这是一个愚蠢的问题,我会道歉。对不起,我还是不明白你在问什么。如果没有其他人来帮忙,可能是因为他们不明白问题是什么。我希望你能修改这个问题,让它更清楚地说明你在寻求什么帮助。