【问题标题】:WebService return multiple valuesWebService 返回多个值
【发布时间】:2013-10-01 14:19:25
【问题描述】:

我正在开发一个 web 服务 - restful - 我需要返回多个值和一个图像。类似这种结构的东西 - 我没有使用 XML:

<User>
    <id></id>
    <name></name>
    <login></login>
    <projects>
        <name></name>
        <anotherField></anotherField>
    </projects>
    <photo></photo> ---> this have to be a image
</User>

所以,如您所见,我有一个字段,里面有其他字段。我知道完成任务的这些选项:

  1. 使用 JSON,但从我的图像中返回一串字节并进行转换的想法不太好;

  2. 使用 FormDataMultiPart 返回,但我在其他字段中的字段存在问题;

  3. 将我所有的字符串放入一个 JSON 中,这适用于这种情况,并将该 json 和图像放入 FormDataMultiPart 中,如下所示:

    FormDataMultiPart response = new FormDataMultiPart();
    response.field("my_image", image, MediaType.APPLICATION_OCTET_STREAM_TYPE);
    formulario.field("my_data", data_json, MediaType.APPLICATION_JSON_TYPE);
    

所以,很抱歉我忘了问,最好的方法是什么?或者,还有其他方法吗?

【问题讨论】:

  • 那么,你尝试过哪些?
  • 对于(3)实施你遇到了什么问题?为什么(3)不合适?
  • 对不起,我忘了问...我不知道什么是最好的选择...

标签: java json web-services rest


【解决方案1】:

我不知道您的具体服务是什么,但您似乎有一些好主意。我会传递所有 JSON,其中 photo 字段包含对您需要的照片的引用。然后,您可以在必要时使用某种文件传输协议来检索照片文件,或者可能使用 HTTP 请求从网络上检索它。

【讨论】:

  • 但是,我需要传递照片,我只能用HTTP,主要是因为我的图像不是那么大。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-09-29
  • 1970-01-01
  • 2014-10-04
  • 1970-01-01
  • 1970-01-01
  • 2021-11-30
  • 2018-03-10
相关资源
最近更新 更多