Springboot 中使用 RestTemplate 向另一个RESTful api 请求multipart file方式如下:

@RequestMapping("/upload")
    public String postData(HttpServletResponse response, HttpServletRequest request) throws IOException, AWTException {
        response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
        response.setHeader("Access-Control-Allow-Credentials", "true");// 允许服务器向浏览器跨域响应时更改浏览器(客户端)的cookie
        String url = "http://file-center.vaiwan.com/file/uploadFile";
        MultiValueMap<String, Object> bodyMap = new LinkedMultiValueMap<>();
        File image = new File(filePath);
        bodyMap.add("file", new FileSystemResource(image));
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.MULTIPART_FORM_DATA);
        HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<>(bodyMap, headers);
        RestTemplate restTemplate = new RestTemplate();
        ResponseEntity<String> res = restTemplate.exchange(url,
                HttpMethod.POST, requestEntity, String.class);
        return res.getBody();
    }
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐