如何使用RestTemplate发送标头中的数据

如何使用RestTemplate发送标头中的数据,rest,Rest,我有三个字段:SystemId、RegionCode和Locale。我必须使用RestTemplate在标题中发送这三个字段。我正在使用以下代码: RestTemplate RestTemplate=new RestTemplate(); HttpHeaders=新的HttpHeaders(); setAccept(Arrays.asList(MediaType.APPLICATION_JSON)); HttpEntity=新建HttpEntity也许您可以尝试以下方法: RestTemplat

我有三个字段:
SystemId
RegionCode
Locale
。我必须使用RestTemplate在标题中发送这三个字段。我正在使用以下代码:

RestTemplate RestTemplate=new RestTemplate();
HttpHeaders=新的HttpHeaders();
setAccept(Arrays.asList(MediaType.APPLICATION_JSON));

HttpEntity=新建HttpEntity也许您可以尝试以下方法:

RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
headers.put("RegionCode", regionCode);
headers.put("SystemId", systemId);
headers.put("Locale", locale);

HttpEntity<String> entity = new HttpEntity<String>(body,headers);

restTemplate.exchange(url, HttpMethod.POST, entity, String.class);
RestTemplate RestTemplate=new RestTemplate();
HttpHeaders=新的HttpHeaders();
setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
标题。放置(“区域代码”,区域代码);
headers.put(“SystemId”,SystemId);
headers.put(“Locale”,Locale);
HttpEntity实体=新的HttpEntity(主体、标题);
exchange(url,HttpMethod.POST,entity,String.class);
这是我创建的示例之一:-
/********这是控制器getMethod**********/
@RequestMapping(value=“/employee/{id}”,method=RequestMethod.GET,products={MediaType.APPLICATION\u JSON\u value,MediaType.APPLICATION\u XML\u value})
公共响应属性getEmployee(@PathVariable(“id”)长id){
System.out.println(“获取id为“+id”的员工);
Employee user=employeeService.findById(id);
if(user==null){
System.out.println(“id为“+id+”未找到的员工”);
返回新的ResponseEntity(未找到HttpStatus.NOT_);
}
返回新的响应属性(用户,HttpStatus.OK);
}
/********这是客户端实现**********/
@RequestMapping(value=“/employee/{id}”,method=RequestMethod.GET,products={MediaType.APPLICATION\u JSON\u value,MediaType.APPLICATION\u XML\u value})
公共响应属性getEmployee(@PathVariable(“id”)长id){
System.out.println(“获取id为“+id”的员工);
Employee user=employeeService.findById(id);
if(user==null){
System.out.println(“id为“+id+”未找到的员工”);
返回新的ResponseEntity(未找到HttpStatus.NOT_);
}
返回新的响应属性(用户,HttpStatus.OK);
}
/*************完成**************/
/*******输出******/

HttpEntity entity=新的HttpEntity(主体、标题);这行的主体是什么?它是请求的主体。如果它不是必需的(您只需要标题),您可以将其留空
This is one of the example I have created:-

/********This is controller getMethod**********/

@RequestMapping(value = "/employee/{id}", method = RequestMethod.GET, produces = {MediaType.APPLICATION_JSON_VALUE,MediaType.APPLICATION_XML_VALUE})
    public ResponseEntity<Employee> getEmployee(@PathVariable("id") long id) {
        System.out.println("Fetching Employee with id " + id);
        Employee user = employeeService.findById(id);
        if (user == null) {
            System.out.println("Employee with id " + id + " not found");
            return new ResponseEntity<Employee>(HttpStatus.NOT_FOUND);
        }
        return new ResponseEntity<Employee>(user, HttpStatus.OK);
    }


/********This is client implementation**********/

@RequestMapping(value = "/employee/{id}", method = RequestMethod.GET, produces = {MediaType.APPLICATION_JSON_VALUE,MediaType.APPLICATION_XML_VALUE})
    public ResponseEntity<Employee> getEmployee(@PathVariable("id") long id) {
        System.out.println("Fetching Employee with id " + id);
        Employee user = employeeService.findById(id);
        if (user == null) {
            System.out.println("Employee with id " + id + " not found");
            return new ResponseEntity<Employee>(HttpStatus.NOT_FOUND);
        }
        return new ResponseEntity<Employee>(user, HttpStatus.OK);
    }
/*************Done**************/

/*******Output******/

<200 OK,<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<employee>
<age>33</age>
<id>1</id>
<name>Tomy</name>
<salary>70000.0</salary>
</employee>`enter code here`
,{Server=[Apache-Coyote/1.1], Access-Control-Allow-Origin=[*], Access-Control-Allow-Methods=[POST, GET, PUT, OPTIONS, DELETE], Access-Control-Max-Age=[3600], Access-Control-Allow-Headers=[x-requested-with], Content-Type=[application/xml], Transfer-Encoding=[chunked], Date=[Wed, 20 Apr 2016 12:49:16 GMT]}>