【问题标题】:REST API - link to endpoint on the webpage [closed]REST API - 链接到网页上的端点 [关闭]
【发布时间】:2021-03-04 22:35:45
【问题描述】:

我正在考虑一个场景,其中“文件下载”功能将在网页上实现(单独的前端(Angular)和后端(Spring))。我不确定,两种可能的方式中哪一种会更好(更专业):

1. 当用户点击链接时,通过 REST API 在前端下载文件

<a (click)="downloadFile(filename)">

2。 Href 到端点

<a href="https://localhost:8080/uploads/{{filename}}">

我会很感激任何回应:)

【问题讨论】:

    标签: java angular spring rest


    【解决方案1】:

    让我们讨论一下两者的优点和缺点。

    在前端直接使用网址

    优势

    1. 非常容易实施。
    2. 在时间方面更快。

    缺点

    1. 上传 URL (https://localhost:8080/uploads) 的更改需要更改您的前端代码。因此,必须生成一个新版本。
    2. 所有用户都可以直接从浏览器访问https://localhost:8080/uploads,下载不属于自己的文件。这在安全性方面很糟糕。
    3. 您几乎无法更改下载逻辑,例如为文件指定与文件名不同的下载名称。

    使用 API 下载文件

    优势

    1. 您可以从后端控制所有逻辑并在文件中添加额外数据。
    2. 如果文件位置发生变化,前端无需担心。它唯一关心的是将文件作为 URL 或 base 64 格式获取。
    3. 您可以将上传位置限制为仅由您的后端访问,这样在安全性方面会更好。

    缺点

    1. 稍微复杂一点。
    2. 就时间而言变慢了。

    在大多数情况下,最好从 API 获取下载信息,除非您有充分的理由不这样做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-03
      • 2012-08-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多