欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

如何使用angularJS与后端进行交互

程序员文章站 2022-05-09 16:17:33
...

今天使用angularJS的$http服务时,打算将一个json对象传递给后端,在网上参照了一些文档

如果直接传递json对象的话,servlet使用request.getParameter(args)取出的值为空

在传递之前应该在前端使用JSON.stringify(data)的方法将json对象转化为字符串,

并且$http里的data应该使用对象进行传递

$http({
	method : "POST",
	url : "com/ljxt/servlet/RegisterService",
	data : {ds : JSON.stringify(data)},
	dataType : "json",
	headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'},
	transformRequest: function(data){
		return $.param(data);
	}
	}).then(function(response) {
		var result = response.data;
		alert("注册" + (result > 0 ? "成功!" : "失败!"));
	});

这样在就可以在后端通过request.getParameter(属性)的方式取出对应的字符串

备注:由于没有使用submit提交而是直接使用一般按钮,所以需要设置headerstransformRequest,这样servlet在接收时才能通过getParameter方法来接收

再通过gson,jackson等将字符串转化成json对象就可以使用了

String data = request.getParameter("ds");


如果直接传递json对象的话,通过request.getParameterMap()来接收就可以得到一个集合

Map<String, String[]> map = request.getParameterMap();

按照正常集合的用法就可以取出其中的值