之前弄javaee的时候已经在myeclipse配置了tomca,这次就用tomcat作为服务器进行一次试验
好了上代码
index.wxml代码如下,弄了一个输入框:
<view class="hello">请输入文字:
<input class="input" bindinput="inputword"/>
</view>
<view>
<button bindtap="ok">确定</button>
</view>
接着是index.js页面:
Page({
data: {
},
inputword: function(e) {
this.setData({
word: e.detail.value
})
},
ok: function () {
wx.request({
url: 'http://localhost:8080/wetchat/TestServlet',
data: {
word:this.data.word,
},
method: 'GET',
header: {
'content-type': 'application/json' // 默认值
},
success: function (res) {
console.log(res.data + "我成功了!!");
},
fail: function (res) {
console.log("失败!!!!!!");
}
})
}
})
url为http://localhost:8080/wetchat/TestServlet 其中http://localhost:8080可以访问到tomcat,wetchat/TestServlet是我创建的工程目录
微信小程序这边好了,那么接下来就打开myeclipse创建一个Web Project,如上面的url所示,我命名为wetchat
然后打开wetchat工程,右键点击src创建一个servlet,我的servlet命名为TestServlet
servlet整个代码如下:
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
// 设置响应头允许ajax跨域访问
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "GET,POST");
//获取微信小程序传来的值并打印
String word = request.getParameter("word");
System.out.println(word);
//返回值给微信小程序
Writer out = response.getWriter();
out.write("后台已经收到了!");
out.flush();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
servlet写好了,接下来该配置文件了,点击WEB-INF目录下的web.xml 进行配置,有时候它会自动配置servlet,注意查看,可能配置目录错。我的就是自动配置错了,自己改过来就好了,不然会报404错误
整个servlet如下:
一定要注意,路径不要错了。
现在,整个前后端已经弄好了,myeclipse启动服务器
接着微信小程序点击编译
随便输入一串数字123456,点击确定
myeclipse的控制台成功打印出微信传来的数据
微信的控制台也收到了: