2016-10-24 2 views
2

로그인 게시물 요청이 있습니다.httpheader에서 클라이언트 데이터를 추출하려면 어떻게합니까?

@RequestMapping(value = EWPRestContants.DO_LOGIN, method = RequestMethod.POST, consumes=MediaType.APPLICATION_XML_VALUE,produces=MediaType.TEXT_PLAIN_VALUE) 
public ResponseEntity<String> doLogin(@RequestBody Loginrequest logReq,@RequestHeader HttpHeaders headers, HttpServletRequest request, HttpServletResponse httpResponse) throws Exception { 
    //........ 
    } 

헤더에서 데이터를 추출하고 싶습니다. 그렇게 할 수있는 API가 있습니까?

내 머리글에 고객의 msIsdn 번호와 이름이 들어 있다고 가정합니다. 어떻게 세부 정보를 가져올 수 있습니까? getFirst()는 사용자 에이전트 세부 사항이나 시작 행만을 가져 오는 데 사용됩니다.

답변입니다. String id= headers.getFirst("ID");

답변

1

@RequestHeader 같은 (값 = "사용자 에이전트", DEFAULTVALUE = "foo는") 문자열의 userAgent

@RequestMapping(value = EWPRestContants.DO_LOGIN, method = RequestMethod.POST, consumes=MediaType.APPLICATION_XML_VALUE,produces=MediaType.TEXT_PLAIN_VALUE) 
public ResponseEntity<String> doLogin(@RequestBody Loginrequest logReq,@RequestHeader(value="User-Agent", defaultValue="foo") String userAgent,@RequestHeader(value="Accept-Language") String acceptLanguage, HttpServletRequest request, HttpServletResponse httpResponse) throws Exception { 
    //........ 
    } 

또는 제 2 용액에서

@RequestMapping(value = EWPRestContants.DO_LOGIN, method = RequestMethod.POST, consumes=MediaType.APPLICATION_XML_VALUE,produces=MediaType.TEXT_PLAIN_VALUE) 
    public ResponseEntity<String> doLogin(@RequestBody Loginrequest logReq,@RequestHeader HttpHeaders headers, HttpServletRequest request, HttpServletResponse httpResponse) throws Exception { 
String userAgent = headers.getFirst(HttpHeaders.USER_AGENT); 
     } 
+0

에서' USER_AGENT을 (를) 확인할 수 없거나 필드가 아닙니다 '다음 오류가 발생합니다. – Sp1

+1

@kuhajeyan 감사합니다. – Sp1

관련 문제