gpt4 book ai didi

java - Spring API 中是否有更好的基于 Accept Header 的内容协商方法?

转载 作者:太空宇宙 更新时间:2023-11-04 09:02:22 24 4
gpt4 key购买 nike

我正在使用内容协商通过更改接受 header 来为同一 REST API 函数定义多个响应。

  1. 接受 header :application/json,应以 json 形式给出响应(由另一个服务使用)
  2. 接受 header :application/octet-stream,应下载与具有自定义文件扩展名的文件相同的 json 响应,以供 UI 使用

目前,当我在 Accept header 中传递 application/octet-stream 时,我收到 406。

这是正确的方法吗?或者我应该将函数分成 2 个还是使用查询参数更好

最佳答案

Currently i am getting 406 when i pass application/octet-stream in the Accept header.

可能,您正在端点上使用某种注释...

类似:@RequestMapping或(@GetMapping或@PostMapping等)...好吧,该注释包含生成属性...该属性应该具有您的端点预期生成的类型,在您的情况下:[application/json, application/octet-stream] ...

注意:客户端应向您的端点表明他想要哪种格式...为此,客户端应使用 Accept http header 指定格式...

Is this the right approach ? or should i split the function in to 2 or is it better to use query parameters?

对我来说,这是正确的方法,因为您的 API 更简单,并且您正在使用标准提出的机制......

关于java - Spring API 中是否有更好的基于 Accept Header 的内容协商方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60638291/

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