微信小程序和java复杂交互_微信小程序與java后台交互

java后台使用的ssm框架,小程序連接的本地接口。跟正常的web訪問沒什么區別,也是后台獲取url,返回json數據;只是小程序前台請求的url要帶上http://localhost:8080

1. 項目結構

0a2032820ea7790daeeb4000521c2c1d.png

2. 配置文件:

dbda9192720a15a5da29cf7844758e0f.png

Jackson相關包下載 除去里面的js文件

3. test.js和test.wxml

(1) test.js

bindtest:function(){

wx.request({

url:'http://ip:8080/WxProgram/buttonTest2',

data:{

username:'admin',

password:'admin'},

method:'GET',

header:{'content-type':'application/json'},

success:function(res){

console.log(res.data);

},

fail:function(res){

console.log("--------fail--------");

}

})

}

(2) test.wxml

{{name}}

test

4. WxTestController.java

@RequestMapping(value="/buttonTest2")public void buttonTest(String username, String password, HttpServletResponse response) throwsServletException, IOException{

response.setContentType("text/html;charset=utf-8");/*設置響應頭允許ajax跨域訪問*/response.setHeader("Access-Control-Allow-Origin", "*");/*星號表示所有的異域請求都可以接受,*/response.setHeader("Access-Control-Allow-Methods", "GET,POST");

System.out.println("username="+username+" ,password="+password);//返回值給微信小程序

Writer out =response.getWriter();

out.write("進入后台");

out.flush();

}

運行結果:

小程序前台:

ed9a5f0adb173dd22d38a2c2733de50d.png

java后台:

48e930b689466f8c0f9ecab750023fc5.png

開始一直沒有連成功,后來百度發現要先設置一下。參考這里

在請求本地接口時,要開啟"不校驗請求域名、TLS版本及HTTPS證書"選項:設置->項目設置->不校驗請求域名、TLS版本及HTTPS證書。因為wx.request的url請求中不能有端口。

7b9cb0ab4bf9b8533791bf7070a72602.png     

1a9cbdadf72938ebe7bd154c57331f69.png

遠程訪問

由於前后台是兩個人開發的,需要遠程訪問。而因為注冊的阿里雲域名審查時間長,暫時用的花生殼遠程連接。方法:下載花生殼客戶端,使用免費贈送的域名,這里花了六塊錢,忘了哪花的了。

登錄花生殼,設置內網穿透->添加映射。內網主機即本機ip地址,cmd,用ipconfig命令查看ipv4地址。如圖。

9a5b7e0ad1395bf2601a6781224105ee.png

這里遇到一個問題,添加的映射一直沒顯示,后來通過客服后台操作才顯示成功。如圖。

06a991d8230a08aedb2b5ca66d57ccdf.png

添加成功之后,啟動Tomcat,之前的內網訪問地址http://ip:8080就可以改用對應的外網訪問地址來訪問了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值