java ajax返回null_ajax – HTML5 FormData在Java Servlet中返回null request.getParameter()

HTML5 FormData API发送multipart / form-data请求.它最初设计为能够通过ajax上传文件,使用新版本2 XMLHttpRequest.以前的版本无法上传文件.

默认情况下,request.getParameter()仅识别application / x-www-form-urlencoded请求.但是你要发送一个multipart / form-data请求.您需要使用@MultipartConfig注释您的servlet类,以便您可以通过request.getParameter()获取它们.

@WebServlet

@MultipartConfig

public class YourServlet extends HttpServlet {}

或者,当您还没有使用Servlet 3.0时,请使用Apache Commons FileUpload.有关这两种方法的更详细答案,请参阅:How to upload files to server using JSP/Servlet?

如果您根本不需要上传文件,请改用“标准”XMLHttpRequest方法.

var xhr = new XMLHttpRequest();

var data = "firstName=" + encodeURIComponent(firstName)

+ "&lastName=" + encodeURIComponent(lastName);

xhr.open("POST", targetLocation, true);

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

xhr.send(data);

这样,您的servlet上就不再需要@MultipartConfig了.

也可以看看:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值