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

标签 json servlets httprequest content-type http-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)

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

request.getHeader("Accept")

最佳答案

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

关于json - 如何确定 HTTP Servlet 请求的内容类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30049094/

相关文章:

java - Spring Boot 中的 JSON Java 8 LocalDateTime 格式

ios - 下载 JSON 异步崩溃

JSON 意外 token chrome

java - 每个 webapp 一个或多个 servlet?

sockets - LUA - 使用 HTTP GET 请求将数据发送到 PHP

json - 将 JSON 数据从 DocumentDB(或 CosmosDB)移动到 Azure Data Lake

java - 如何修复Servlet中Coverity(类似于veracode的安全工具)中的 "Trust boundary violation -Security Issue"?

java - 生成动态表以及动态单选按钮以进一步在 JSP 中生成动态表

Android 忽略 DefaultHttpClient 超时参数

java - 尝试获取《纽约时报》页面时,使用 GAE 的 URLFetchService 返回 null