java - 如何在 Spring Boot 中将图像嵌入到 CRUD API 中?

标签 java http spring-boot etag

我正在尝试使用 ShallowEtagHeaderFilter 在我的 springboot 中实现 ETAG:

@Bean
    public ShallowEtagHeaderFilter shallowEtagHeaderFilter() {

        System.out.println(new ShallowEtagHeaderFilter());
        return new ShallowEtagHeaderFilter();
    }

当我做类似的事情时,我在标题中显示了 ETAG

curl -i -X POST localhost:8080/search/XLT

但是当我请求带有在前一个中收到的 etag 的来源时,我再也看不到它了:

curl -i -X POST localhost:8080/search/XLT  -H 'If-None-Match:"MY PREVIOUS REQ ETAG MD5"

我也看不到 304 Not Modified 和任何其他响应。

我的获取方法

 //USER Get REQUEST
@RequestMapping(value = "/user/{user_id}", method = RequestMethod.GET)
public @ResponseBody String getReport(
        @PathVariable("user_id") String userid, 
        HttpServletRequest request, 
        HttpServletResponse response) {

    //Adding request type to responseList
   addResponse(true, "<HTTP-GET REQUEST>");

   //Call ProcessGetRequest which will return data fetched with that key
   ProcessGetRequest(userid);

   return displayResponseStatus();
}

有什么我必须做的事情遗漏了吗? 任何帮助将不胜感激。

最佳答案

ShallowEtagHeaderFilter 仅应用于 GET 和 HEAD 请求,这是一种相当粗糙的受支持 ETag 方式。

根据您对 CRUD 服务的编码方式,Spring supports higher-level features for such cases使用 ResponseEntityWebRequest

关于java - 如何在 Spring Boot 中将图像嵌入到 CRUD API 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40950005/

相关文章:

c# - 我们应该根据哪些因素为 Windows 应用程序选择 Java 或 .Net 技术?

java - 如何从android数据库sqlite读取数据?

spring-boot - 将 MockMvc 与 SpringBootTest 结合使用和使用 WebMvcTest 之间的区别

http - 从 Angular 2 http 获取错误消息

spring - 在 Spring Boot 2 中,是否可以自动生成具有唯一约束的 JoinTable?

java - 在手机中访问SpringBoot托管的URL

java - 使用 maven2 向 war manifest 添加颠覆修订

Eclipse 中的 Java 库路径 - 一次将 dll 库添加到多个 jar 中?

http - VBA/Corel 绘图 : How to send binary and text file in HTTP POST request to server from VBA/VB6 script running from Corel Draw 12/X4?

java - 将 JSON 发送到 Java post 并显示信息