我通过express提供图像,并在不存在这些图像时替换通用图像。使用这些图像的HTML是由EJS循环遍历数组并创建img src URL生成的。
这是我的代码的简化版本:
的env
people = [
{id: "10937290375", name: "John Smith"},
{id: "73402394793", name: "Paul Jones"}
]
EJS
<% for(var i=0; i < people.length; i++) { %>
<li>
<img src="/image/<%= people[i].id %>" />
<span><%= people[i].name %></span>
</li>
<% } %>
的node.js
app.get('/image/:id', function(req, res) {
var filename = `images/${req.params.id}.png`;
res.sendFile(filename, function(err) {
if(err) {
filename = 'blank.png';
res.sendFile(filename);
}
});
});
问题在于,它非常慢,并且同步(我猜部分是由于http的工作方式),但我怎样才能加快速度呢?
答案 0 :(得分:0)
为什么不使用第三方提供商作为您的图片回购。
我推荐Cloudinary - 他们有节点js包,非常容易集成。