如果请求的内容类型不可接受,则服务器通常会返回HTTP 400。instagram的curl示例使用
-F指定多篇文章数据的参数:
-F, --form ConTENT Specify HTTP multipart POST data (H)
因此,您可能想尝试在RestTemplate请求中显式设置Content-type HTTP标头:
HttpHeaders requestHeaders = new HttpHeaders();requestHeaders.setContentType(MediaType.MULTIPART_FORM_DATA);HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<MultiValueMap<String, String>>(mvm, requestHeaders);ResponseEntity<InstagramResult> response = restTemplate.exchange(url, HttpMethod.POST, requestEntity, InstagramResult.class);InstagramResult result = response.getBody();
如注释中前面所述,像fiddler这样的代理工具对于调试确实非常有用。这种情况下的挑战是您正在使用SSL,因此如果没有特殊配置,这些工具将无法“查看”加密的通信。



