Как получить доступ к информации заголовка HTTP в Spring MVC REST controller?
Я новичок в веб-программировании в целом, особенно в Java, поэтому я только что узнал, что такое заголовок и тело.
Я пишу RESTful services с помощью Spring MVC. Я могу создавать простые сервисы с помощью @RequestMapping
в мои контроллеры. Мне нужна помощь в понимании того, как получить информацию заголовка HTTP из запроса, который поступает в мой метод в моем контроллере службы REST. Я хотел бы разобрать заголовок и получить некоторые атрибуты из него.
не могли бы вы объяснить, как я иду о получении этой информации?
3 ответа:
при аннотировании параметра с
@RequestHeader
параметр извлекает информацию заголовка. Так что вы можете просто сделать что-то вроде этого:@RequestHeader("Accept")
для получения
можно использовать
@RequestHeader
аннотацииHttpHeaders
параметр метода для получения доступа ко всем заголовкам запроса:@RequestMapping(value = "/restURL") public String serveRest(@RequestBody String body, @RequestHeader HttpHeaders headers) { // Use headers to get the information about all the request headers long contentLength = headers.getContentLength(); // ... StreamSource source = new StreamSource(new StringReader(body)); YourObject obj = (YourObject) jaxb2Mashaller.unmarshal(source); // ... }