首页 > 解决方案 > 在 Angular 中显示保存在 node.js 后端的图像

问题描述

所以我有一个关于安全的问题。想象一下,我已将动物的图片上传到服务器。我已经保存1545419953137bear.jpg在我的上传文件夹的后端,我保存了我所有的图像。

在前端我有这个img元素,我使用 [src] 动态创建此上传文件夹的路径以检索此熊的图像。

我现在的问题是:这是执行此操作的正确方法还是让我容易受到安全问题的影响?如果是这样,处理这个问题的更好方法是什么?

在左侧,您可以看到后端的上传文件夹,右侧是我如何创建此文件

在此处输入图像描述

html代码(角度)

<img [src]="linkImg(post.fileName)">

组件方法:此方法返回将显示图像的 url。这是执行此操作的正确方法还是缺乏安全性?

linkImg(fileName) {
// base_URL returns localhost:3000 or the production URL
    return `${this.BASE_URL}/uploads/${posterProfilePic}`;
  }

标签: javascripthtmlnode.jsangular

解决方案


这是处理服务图像的好方法。请记住,您的服务器应该是安全的。

如果您想保护图像以供公开显示,您需要通过中间件或任何服务器技术确保它们的安全,并且检查是否是经过身份验证的请求。

从角度来看,它是好的。

阅读安全性 https://nodesource.com/blog/nine-security-tips-to-keep-express-from-getting-pwned/


推荐阅读