servlet与页面(小程序)通信

小程序

   /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
      wx.request({
        url: 'http://localhost:8080/Demo/regis',
        data: '',
        header: {},
        method: 'GET',
        dataType: 'json',
        responseType: 'text',
        success: function(res) {
          console.log(res)
        },
        fail: function(res) {},
        complete: function(res) {},
      })
  },

servlet

public class regisServlet extends HttpServlet {

	public void init() throws ServletException {

	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// 设置请求编码
		request.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		/* 设置响应头允许ajax跨域访问 */
		response.setHeader("Access-Control-Allow-Origin", "*");
		/* 星号表示所有的异域请求都可以接受, */
		response.setHeader("Access-Control-Allow-Methods", "GET,POST");
		// 设置响应
		response.setContentType("text/html");

		/*
		 * 实际逻辑处理
		 */
		// 获取页面(小程序)传值
		String pageValue = request.getParameter("testVal");
		System.out.print("来自页面的值:" + pageValue);
		// 向页面(小程序)返回值
		String[] color = { "黑色", "白色", "蓝色" };
		// 转成json数据 使用Gson类需要导入gson-2.8.0.jar
		Map<String, Object> result = new HashMap<String, Object>();
		result.put("data", color);
		result.put("msg", "成功");
		String json = new Gson().toJson(result);
		// 返回值给微信小程序
		Writer out = response.getWriter();
		out.write(json);
		out.flush();
	}

	// 结束
	public void destroy() {

	}


}

GSON下载: http://repo1.maven.org/maven2/com/google/code/gson/gson/2.8.0/

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5">
    <servlet>
        <servlet-name>regisServlet</servlet-name>
        <servlet-class>com.demo.user.regisServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>regisServlet</servlet-name>
        <url-pattern>/regis</url-pattern>
    </servlet-mapping>
</web-app> 
页面接收

后台接收

在这里插入图片描述
原作者地址:https://blog.csdn.net/code_shadow/article/details/80372516

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值