登陸表單MUI中提供了代碼:
<header class="mui-bar mui-bar-nav">
<h1 class="mui-title">用戶登錄</h1>
</header>
<div class="mui-content">
<form class="mui-input-group">
<div class="mui-input-row">
<label>用戶名</label>
<input type="text" id="username" class="mui-input-clear" placeholder="請輸入用戶名">
</div>
<div class="mui-input-row">
<label>密碼</label>
<input type="password" id="password" class="mui-input-password" placeholder="請輸入密碼">
</div>
<div class="mui-button-row">
<button type="button" id="login_btn" class="mui-btn mui-btn-primary">確認</button>
<button type="button" class="mui-action-back mui-btn mui-btn-danger">取消</button>
</div>
</form>
</div>
通過監聽確認按鈕的點擊來發送ajax請求,把用戶名和密碼封裝到字典以post方式發送給flask后台服務器去處理請求。
<script type="text/javascript"> mui.init() document.getElementById('login_btn').addEventListener('tap',function () { var user=document.getElementById("username").value; var pwd=document.getElementById("password").value; mui.post('http://192.168.1.62:9527/login',{ user:user, pwd:pwd },function(data){ mui.toast(data.msg) },'json' ); }) </script>
注意APP發送請求給服務器,所以ip為服務器的地址,此次為本地回環ip
后台flask處理post請求,並返回相應結果:
from flask import Flask,request,jsonify from setting import mongoDB app=Flask(__name__) @app.route('/login',methods=["POST"]) def login(): user_info=request.form.to_dict() #將post中的數據json轉化為dict類型,便於取值 mdb=mongoDB.user.find_one({"username": user_info["user"], "password":user_info["pwd"]}) #后台數據庫查詢數據 if mdb: return jsonify({'status':200,'msg':"歡迎你,{0}!".format(user_info["user"])}) return jsonify({'status':201,'msg':"用戶名或者密碼錯誤!"}) if __name__ == '__main__': app.run("0.0.0.0",9527,debug=True,)
連接MongoDB數據庫:
import pymongo client=pymongo.MongoClient(host="127.0.0.1",port=27017) mongoDB=client["sc"]
數據以json傳遞來,以jsonify返回,則前端app能直接解析到數據 ------> mui.toast(data.msg)
最終實現效果: