港口定位項目開發筆記3·基於JSP實現的網頁端
前兩次完成了微信小程序實時獲取位置功能的實現,這次需要開發網頁端實現與微信小程序端數據交互的功能,多年不搞Java,現在突然有點熟悉的陌生感。
java後臺中獲取微信小程序的數據
微信小程序端做了一個簡單的按鈕,點擊觸發postdata事件函數就可以把數據發送到java後臺中。
微信小程序端
demo6.wxml
<button bindtap="postdata" type="primary">向java後臺發送數據</button>
demo6.js
postdata(){
var that = this;
wx.request({
url: 'http://localhost:8080/LocationProject/save_data',
method: 'GET',
data: {
username: "tiger", userpass: "123456"},
header:{
'content-type': 'application/json'
},
success: function(res){
console.log("success");
},
fail:function(err){
console.log('fail reason:'+err.data);
}
})
},
屬性 | 說明 |
---|---|
url | 開發者服務器接口地址 |
data | 請求的參數(要傳遞的數據) |
method | HTTP 請求方法(GET/POST) |
header | 響應的數據類型 |
注意:POST提交方式上邊json需改成這個x-www-form-urlencoded,否則會接收不到數據!
java後臺代碼
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doget");
System.out.println(req.getParameter("username"));
System.out.println(req.getParameter("userpass"));
}
request合法域名問題
一開始點擊提交數據提示
但是在微信小程序後端添加request合法域名時本地域名localhost是不行的,難道要去買個服務器?雖然諮詢了老師後有了服務器隨便買他報銷的政策,但是還是在查閱了下文檔,發現可以採用下面的做法!
在項目中,詳情->本地設置->選中不校驗合法域名,即可解決這個問題,但是項目上線後是必須要採用合法域名及服務器的,到時候再找老闆報銷~
ERR_CONNECTION_REFUSED問題
在保證url沒有錯誤的情況,出現下列錯誤
原因:java後臺服務器沒跑起來
解決方案就是將服務器跑起來即可!
運行效果
點擊向java後臺發送數據
獲取到了數據,成功!!