梅科尔工作室-django后端和鸿蒙app实现登录功能的前后端交互
总结
目录
总结
前端核心代码
hml页面代码:
前端js代码:
后端核心代码:
本次培训实现了鸿蒙app的登录请求,讲解了input属性和动态读取文本框内数据,并用django连接mysql数据库进行了后台验证,返回到前端验证结果
前端核心代码
编写hml页面和js代码,并设置css样式,注意文本框的应用和按钮的函数
hml页面代码:
<div class="container"><div class="title"><text class="txt">Welcome</text></div><div class=""><div><div><input id="username" class="input" type="text" maxlength="10" placeholder="登录" onchange="inputUsername"></input></div></div><div><div><input id="password" class="input" type="password" maxlength="10" onchange="inputPassword" placeholder="密码"></input></div></div></div><div class="btn">
<!-- 执行登录函数--><button onclick="onClick">立即登录</button></div><div><text>忘记密码</text><text>|</text>
<!-- 执行注册函数--><text onclick="doRegist">立即注册</text></div><div>
<!-- 获取后端返回信息--><text>{{winfo}}</text></div>
</div>
前端js代码:
// @ts-nocheck
import router from '@system.router';
import prompt from '@system.prompt';
import fetch from '@system.fetch';
import qs from 'querystring'export default {data: {fit:'cover',winfo:"",},doRegist(){router.push({uri:'pages/index/index',// 指定要跳转的界面})},inputAccount(e){this.username = e.value;},inputPassword(e){this.password = e.value;},onClick(){fetch.fetch({url:'http://127.0.0.1:8000/train/login',data: qs.stringify({'username':"111",'password':"111"}),responseType:"json",method:"POST",success:(resp)=>{this.winfo = resp.data;console.log("返回的数据:"+this.winfo)if(this.winfo=="验证成功"){prompt.showToast({ // 提示验证成功message: "更新成功",duration: 5000,})}},fail:(resp)=>{this.winfo = resp.data;console.log("获取数据失败:"+this.winfo)}})}
后端核心代码:
注意编写view.py里的视图
class login(APIView):def post(self, request): # 定义post函数username = request.data.get("username") # 通过请求获取数据并赋值password = request.data.get("password")print(username)print(password)cur = con.cursor() # 定义个游标sql = "select * from tb_user where username =%s" # 定义sql语句进行查询values = (username)try: # 异常执行部分if cur.execute(sql, values): # 如果匹配con.commit() # 提交事务results = cur.fetchall() # 获取结果集for row in results:Pusername = row[1] # 遍历结果,将第一行赋给usernamePpassword = row[2] # 同理print(Pusername)print(Ppassword)if password == Ppassword: # 匹配print("账号密码验证成功")return HttpResponse('验证成功')else:print('查无此人')except pymysql.Error as e: # 捕捉异常print("查无此人" + str(e))return HttpResponse("请求失败")
梅科尔工作室-django后端和鸿蒙app实现登录功能的前后端交互相关推荐
- 梅科尔工作室-Django学习笔记(二次学习)(3)
本次学习的是如何用django实现前端鸿蒙OS登录 下面介绍一下本次的操作过程. 1.首先创立MySQL数据并将数据库导入到django当中 其中:导入数据库的操作: 2.配置urls 对应新建的pe ...
- 梅科尔工作室-江凌宇-鸿蒙笔记1
对于鸿蒙软件开发所用编译器的介绍 鸿蒙APP开发所采用的编译器为华为自研的DevEc编译器,简洁美观易上手是此编译器的巨大优势 主要目录配置文件作用(stage模型和FA模型下) 下面是在FA模型下的 ...
- 梅科尔工作室-Django学习笔记(二次学习)(1)
学习网址: Django小白入门到实战教程(2021)_哔哩哔哩_bilibili 配置路由urls 创建app:在终端里输入python manage.py startapp web python ...
- 梅科尔工作室-梁嘉莹-鸿蒙笔记1
基本操作界面介绍 预览按钮 内置API文档查阅 项目设置 运行按钮(只有在真机模拟或远程模拟时才可以使用) 安装插件,在files下的settings-->Plugins里面,可以安装一个中文的 ...
- 梅科尔工作室——Django+HarmonyOS实现用户登录
Django+HarmonyOS实现用户登录 前言 使用软件:pycharm专业版.DevEco studio 文章中的mm为简写 一.使用pymysql连接数据库 # connect mysql t ...
- 梅科尔工作室-梁嘉莹-鸿蒙笔记2
1 组件介绍 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多样的UI组件,我们可以使用这些组件轻松的编写出更加丰富.漂亮的界面. ...
- 梅科尔工作室-李柯增-鸿蒙笔记2
组件的使用: 一.组件介绍: 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多样的UI组件,我们可以使用这些组件轻松的编写出更加丰 ...
- 梅科尔工作室-许博利-鸿蒙笔记2
Text Text组件用于在界面上展示一段文本信息,可以包含子组件Span. 文本样式 针对包含文本元素的组件,例如Text.Span.Button.TextInput等,可使用fontColor.f ...
- 梅科尔工作室-江凌宇-鸿蒙笔记2
HarmonyOS构建漂亮的页面 一.页面基本元素介绍 常用基础组件 组件介绍: 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多 ...
最新文章
- 刻意练习:Python基础 -- Task11. 魔法方法
- Oracle真实世界数据链——将现实世界和区块链世界相互打通——让主流币爆涨十倍的项目
- 机器学习中训练集、验证集和测试集的区别
- 【C++】构建栈 进栈和出栈
- 音视频技术开发周刊 | 158
- LiveVideoStackCon 2018推出学生优惠票
- java是解释型编程语言_程序设计语言可以分为两类:编译型语言和解释型语言...
- lintcode :Integer to Roman 整数转罗马数字
- 组合数学基本工具-- 排列与组合以及简单公式
- 你只差这两步 | 将Sentinel 控制台应用于生产环境
- BootStrap笔记-badge的使用
- python模块-paramiko
- Qt总结之九:QMap中嵌套QList
- 对接接口文档_产品经理所理解的接口
- FDQuery 怎么能插入NULL参数
- 我的世界服务器自动刷矿机,我的世界服务器钻石大陆怎么做自动刷矿机 | 手游网游页游攻略大全...
- VC被控制时关闭极域电子教室、破解联想硬盘保护系统密码(上)
- 阻容感基础03:电阻器分类(1)-片式电阻器
- 大学计算机基础知识电子版,(完整版)大一大学计算机基础课程知识点.pdf
- 各类排序算法比较分析