如何确定 HTTP Servlet 请求的内容类型?

How to determine Content Type of a HTTP Servlet Request?

如何在不读取请求正文的情况下从 HttpServletRequest 获取内容类型?

当我使用以下内容时,我得到 null:

request.getContentType()

当我尝试使用以下内容读取请求正文中的 JSON 数据时:

StringBuilder jsonsb = new StringBuilder();
BufferedReader jsonbr = request.getReader();

request.getReader() 抛出

Caused by: java.lang.NullPointerException: null
    at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:106)

我什至尝试使用以下方法并能够获取内容类型,但是在这条语句之后从请求中获取 reader 时仍然得到相同的 NullPointerException

request.getHeader("Accept")

您正在处理 GET 请求。它可能不包含 Content-Types header,因此您在那里看到的是空值。