微信小程序的js
header头很重要,不然后端拿不到值
getProductInfo: function (e) {
var that = this;
wx.request({
url: 'http://localhost:8080/getProductInfo',
data: {
"id": e
},
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
method: 'POST',
// header: {}, // 设置请求的 header 默认是application/json
success: function (res) {
console.log(res.data)
that.setData({ //this.setData的方法用于把传递过来的id转化成小程序模板语言
data: res.data //拿到该商品详情对应的商品id,再调用getProdutInfo方法
})
},
fail: function () {
// fail
},
complete: function () {
// complete
}
})
},
后端获取
跟普通的获取是一样的:
int id=parseInt(request.getParameter("id"));
@RequestMapping("/getProductInfo")
public void getProductInfo(HttpServletRequest request, HttpServletResponse response) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
//拿到数据库表里的 products表里的所有记录,前端需要里面的id name picture discibet price num xiaoliang
int id=parseInt(request.getParameter("id"));
List<ProductsEntity> products=ProductsService.findByProductId(id);
JSONObject productinfo = new JSONObject();
for (ProductsEntity product : products) {
productinfo.put("id",product.getProductId());
productinfo.put("name",product.getProductName());
productinfo.put("img",product.getProductPicture());
productinfo.put("discriber",product.getProductDisc());
productinfo.put("price",product.getProductPrice());
productinfo.put("sellnum",product.getSellNum());
productinfo.put("productnum",product.getProductNum());
}
response.setContentType("text/json;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(productinfo.toString());
}