Servlet getParameter() returns 表单数据为空

Servlet getParameter() returns null for form-data

我正在向我的 localhost Tomcat 8.0 Servlet 3.1 Web 应用程序发送 POST 请求,但是 request.getParameter("") returns 我 null

这就是我提出请求的方式。

我正在使用 PostMan 执行我的 POST 请求。在 java 端,我调用 request.getParameter("code"),这给了我 nullqwe 字段也是如此。我没有使用任何框架。它是原始的 servlet。这只是一个后端,所以都是关于处理数据和响应客户端的。

如果我使用 "x-www-form-urlencoded",我可以通过 getParameter() 调用检索参数,但我仍然想知道为什么我无法获得 form-data.

谢谢。

感谢@cjstehno,

当他说"form-data"实际上是一个多部分数据时,我试图将它作为多部分数据读取,但考虑到isFormField()方法来区分文件和参数。因此,从原始 servlet 中,可以通过下面的代码读取 form-data。从性能的角度来看,我很确定这可能会有所改善。

try {
     ServletFileUpload upload = new ServletFileUpload();
     FileItemIterator iter = upload.getItemIterator(request);

     while (iter.hasNext()) {
          FileItemStream item = iter.next();
          String name = item.getFieldName();

          if (item.isFormField()) {
               String value = Streams.asString(item.openStream());
          }
     }          
 } catch (Exception ex) {}