gpt4 book ai didi

java - JAX-RS 资源方法可以返回多个图像吗?

转载 作者:行者123 更新时间:2023-11-30 07:20:01 25 4
gpt4 key购买 nike

我们有一个 Web 应用程序,在运行算法后会生成 2-3 个图像。我们希望将这些图像返回给用户。我认为最好的设计是将图像存储在项目代码库之外:在外部文件夹中,例如 /tmp 目录。

首先,您同意这个设计决定吗?我觉得每次我们运行算法时,项目代码库都会变得臃肿。我的老板希望我将图像存储在我们的 web 应用程序中,但我提出了将它们存储在 /tmp 目录中的一个很好的案例。

其次,是否可以在单个 JAX-RS 资源方法中返回多个图像(很可能是 2 个或 3 个)?我从未见过这样做,所以我倾向于认为我应该编写一个通用资源方法来返回给定文件名的图像。

我非常感谢对这两个问题的反馈。预先感谢:)

最佳答案

We have a web application which produces 2-3 images after an algorithm is run. We want to return these images to the user. I thought the best design would be to store the images outside the project code base: in an external folder like the /tmp directory.

First off, do you agree with this design decision? I feel like the project code base would get bloated every time we run the algorithm. My boss wanted me to store the images inside our webapp, but I made a good case for storing them in the /tmp directory.

我认为,设计决策问题是基于意见的。我会给你我的想法,但我不能说这部分是一个“答案”,这只是一个意见。

正如我在评论中提到的,从我的角度来看,网页有一种非常标准的图像服务方式(即使客户端现在喜欢 AJAX 请求)。单个图像有一个 URL。我不会试图偏离这一点。

您可以决定在哪里接待他们。我可能会使用 nginx 等 Web 服务器(而不是应用程序服务器),它针对提供图像、js 文件等静态内容进行了优化。

I feel like the project code base would get bloated every time we run the algorithm.

这部分让我感到困惑。您正在生成图像文件。这只是数据。它不是代码,也不会真正扩充代码库。如果您的意思是消耗存储代码的磁盘空间,当然,请将其托管在其他地方。

Secondly, is it possible to return multiple images (most likely 2 or 3) in a single JAX-RS resource method? I've never seen this done, so I'm inclined to think I should write a generic resource method for returning an image given the filename.

从某种意义上来说这是可能。您可以将图像编码为用于嵌入图像的文本。例如(从 page explaining embedding images in html 窃取):

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAAD
NCAMAAAAsYgRbAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5c
cllPAAAABJQTFRF3NSmzMewPxIG//ncJEJsldTou1jHgAAAARBJREFUeNrs2EEK
gCAQBVDLuv+V20dENbMY831wKz4Y/VHb/5RGQ0NDQ0NDQ0NDQ0NDQ0NDQ
0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PzMWtyaGhoaGhoaGhoaGhoaGhoxtb0QGho
aGhoaGhoaGhoaGhoaMbRLEvv50VTQ9OTQ5OpyZ01GpM2g0bfmDQaL7S+ofFC6x
v3ZpxJiywakzbvd9r3RWPS9I2+MWk0+kbf0Hih9Y17U0nTHibrDDQ0NDQ0NDQ0
NDQ0NDQ0NTXbRSL/AK72o6GhoaGhoRlL8951vwsNDQ0NDQ1NDc0WyHtDTEhD
Q0NDQ0NTS5MdGhoaGhoaGhoaGhoaGhoaGhoaGhoaGposzSHAAErMwwQ2HwRQ
AAAAAElFTkSuQmCC" alt="beastie.png">

您可以在 JSON 响应对象中以文本形式返回该数据。我不会这样做,但这是一个选择。

我只是返回一个响应对象,其中包含获取实际图像的 URL。这使得 API 更加简洁。

关于java - JAX-RS 资源方法可以返回多个图像吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37755286/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com