网络学习(13)|Spring Boot中获取HTTP请求头(Header)内容的详细解析
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Enumeration;
import javax.servlet.http.HttpServletRequest;
@RestController
public class HeaderController {
// 使用HttpServletRequest获取所有请求头信息
@GetMapping("/headers")
public String getHeaders(HttpServletRequest request) {
StringBuilder headers = new StringBuilder();
Enumeration<String> headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) {
String headerName = headerNames.nextElement();
String headerValue = request.getHeader(headerName);
headers.append(headerName).append(": ").append(headerValue).append("\n");
}
return headers.toString();
}
// 使用@RequestHeader注解获取指定的请求头信息
@GetMapping("/specific-header")
public String getSpecificHeader(@RequestHeader("User-Agent") String userAgent) {
return "User-Agent: " + userAgent;
}
}
这段代码提供了两个简单的RESTful API,第一个API使用HttpServletRequest
获取所有请求头信息,第二个API使用@RequestHeader
注解获取指定的请求头信息。这两种方式都可以用于Spring Boot中获取HTTP请求头的内容。
评论已关闭