go 注册登录 mysql_golang实现用户登录注册的方法
golang实现用户登录注册的方法
发布时间:2020-06-17 10:56:15
来源:亿速云
阅读:198
作者:Leah
这篇文章给大家分享的是golang实现用户登录注册的方法,相信大部分人都还没学会这个技能,为了让大家学会,给大家总结了以下内容,话不多说,一起往下看吧。
第一步 注册models
models下建立models.go
models.go文件package models
import (
"github.com/astaxie/beego"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
func RegisterDB() {
//注册驱动
orm.RegisterDriver("mysql", orm.DRMySQL)
//数据库链接
//注册默认数据库
var db_url string = beego.AppConfig.String("username_DB") + ":" + beego.AppConfig.String("password_DB") + "@tcp(" + beego.AppConfig.String("host_DB") + ")/" + beego.AppConfig.String("name_DB") + "?charset=" + beego.AppConfig.String("charset")
beego.Info(db_url)
orm.RegisterDataBase("default", "mysql", db_url)
// orm.RegisterDataBase("default", "mysql", "an:111@tcp(127.0.0.1:3306)/yoo_home?charset=utf8")
// //注册model
orm.RegisterModel(new(TUser))
}
第二步 数据库连接的需要
conf下的app.conf文件appname = an
httpport = 8080
runmode = dev
sessionon = true
#数据库为mysql
host_DB = "127.0.0.1"
port_DB = "3306"
charset = "utf8"
name_DB = "ancg"
username_DB = "an"
password_DB = 111
第三步 写个简单的前端 view界面
views 下建立client.html文件
客户端接口测试
注册
[options == register 注册]
登录
[options == login 登录]
第四步 在models中 建立TUser 用来为数据库自动建表使用
TUser.gopackage models
import (
"github.com/astaxie/beego/orm"
//_"github.com/go-sql-driver/mysql"
)
//用户表
type TUser struct {
//用户序号
Id int64
//电话号码
Tep string
//密码
Pwd string
//收款人
Payee string
//地址
Address string
//收款帐号
Amount string
//账号类别
AmountType string
//是否消费者
IsCustomer bool
//是否商家
IsSeller bool
//是否配送员
IsDiliver bool
//是否管理员
IsManager bool
//微信openId
Vid string
//是否冻结
IsLock bool
//创建时间 --- 时间戳
AddTime int64
}
//新建用户
func AddUser(user *TUser) (int64, error) {
o := orm.NewOrm() //数据库
userId, err := o.Insert(user) //插入数据
return userId, err
}
//查询账号
func GetUserById(userId int64) (*TUser, error) {
o := orm.NewOrm() //数据库
user := new(TUser) //TUser就是第9行struct的数据库,就是mysql的表
qs := o.QueryTable("t_user") //表名为t_user
err := qs.Filter("id", userId).One(user) //One是指查询一条数据,One(user)是查询mysql表中一条数据
return user, err
}
//手机号查询账号
func GetUserByTel(tel string) (*TUser, error) {
o := orm.NewOrm()
user := new(TUser) //TUser就是第9行struct的数据库,就是mysql的表
qs := o.QueryTable("t_user") //表名为t_user
err := qs.Filter("tel", tel).One(user) //One是指查询一条数据,One(user)是查询mysql表中一条数据
return user, err
}
//微信Id查询账号
func GetUserByVid(vid int64) (*TUser, error) {
o := orm.NewOrm()
user := new(TUser) //TUser就是第9行struct的数据库,就是mysql的表
qs := o.QueryTable("t_user") //表名为t_user
err := qs.Filter("vid", vid).One(user) //One是指查询一条数据,One(user)是查询mysql表中一条数据
return user, err
}
第五步 controllers 里面建立一个主接options的文件,用对应option来调用其它的controllers
client.go文件package controllers
import (
"github.com/astaxie/beego"
"time"
)
type ClientController struct {
beego.Controller
}
func (this *ClientController) Get() {
this.TplName = "client.html"
}
func (this *ClientController) Post() {
options := this.Input().Get("options")
beego.Info(options)
//请求检查方法
if options != "" {
switch options {
case "login":
this.login()
case "register":
this.register()
default:
this.Data["json"] = map[string]interface{}{"status": 400, "msg": "无对应处理方法!", "time": time.Now().Format("2006-12-12 12:12:12")}
this.ServeJSON()
return
}
this.Data["json"] = map[string]interface{}{"status": 400, "msg": "options为空", "time": time.Now().Format("2006-12-12 12:12:12")}
this.ServeJSON()
return
}
}
以上就是golang实现用户登录注册的方法,详细使用情况还需要大家自己亲自动手使用过才能领会。如果想了解更多相关内容,欢迎关注亿速云行业资讯频道!
go 注册登录 mysql_golang实现用户登录注册的方法相关推荐
- java jsp登录界面设计,用户登录注册系统(基于JSP和Servlet)
准备工作 开发环境准备 开发工具:eclipse 4.3 技术语言:Java SE 1.7 依赖控制:Maven 3.0.4 服务器:Tomcat 7.0.68 操作系统:Windows 10 搭建一 ...
- 管理员用户不同身份登录页面代码PHP,wordpress管理员登录和普通用户登录后跳转到不同页面-♚付涛纪实阁♚...
这篇文章将向您展示WordPress用户登录后如何重定向到指定页面或者文章的技巧. 一.重定向到网站管理面板. 将以下代码添加到您的当前主题的 functions.php 文件中 二.重定向到指定页面 ...
- php yanzhengm,php登录验证_php用户登录与验证的代码举例
摘要 腾兴网为您分享:php用户登录与验证的代码举例,雨课堂版,新东方,小度音响,手机互联等软件知识,以及py平台,折扇app,内蒙古税务局,货代,兰斯10,新浪长微博,吉民生,yy球球直播视频,速优 ...
- 如何实现一键登录,提升用户登录体验?
用户留存对于大多数互联网从业者而言都是一项重要的指标,在获客成本日益增加的今天,如何提升用户体验?如何有效做好用户留存?从细节入手,提升用户体验即使是在注册/登录环节也不容忽视.麻烦.不够顺畅的登录方 ...
- 用户未登录重定向到登录界面_Linux 用户登录记录
简介 服务器很多时候哦都是会开放远程登录端口,这时候我们就会关注 用户登录记录 . 在 Linux 上,有关用户登录的信息记录在 utmp(/var/run/utmp).wtmp(/var/log/w ...
- linux用户双重认证登录,linux PAM 用户登录认证
PAM(Pluggable Authentication Modules )是由Sun提出的一种认证机制.它通过提供一些动态链接库和一套统一的API,将系统提供的服务 和该服务的认证方式分开,使得系统 ...
- 板邓:wordpress自定义登录页面实现用户登录
首先检查用户是否已经登录,如果已经登录就返回info目录下的页面. <?phpglobal $current_user;$loginuserid = $current_user->ID;i ...
- python用户名密码登录退出_用户登录登出
一.功能需求分析 1.登录功能分析 1.1登录流程 1.2功能(一个请求为一个功能) -登录页面 -登录功能 -登出功能 二.登录页面 1.接口设计 1.1.接口说明 类目 说明 请求方式 GET u ...
- QQ互联第三方登录多应用用户登录打通
2019独角兽企业重金招聘Python工程师标准>>> 在开发第三方登录的时候,发现qq互联的第三方登录openId在多个应用中用户登录无法打通,然后发送邮件咨询了一下qq互联(邮箱 ...
最新文章
- Spring事务管理--嵌套事务详解
- 各种数据结构性能的比较
- mysql更新多条数据6_mysql语句:批量更新多条记录的不同值
- Color类提供的颜色
- SpaceX 载人飞船首发成功!
- 查找交换机某端口连接的主机IP地址
- 51CTO独家:2008下半年软考所有科目试题已到
- jQuery的DOM操作之捕获和设置
- Excel之vlookup函数的模糊匹配和精准匹配
- 东北大学数理统计 2019-2020 年试题答案
- 网页源代码保护(禁止右键、复制、另存为、查看源文件)
- 阿里巴巴争夺中国蓬勃发展的电动汽车市场
- UDS(一)入门概述
- 企业邮箱适用于哪些行业?公司邮箱都用什么?
- 子比Zibll主题V6.3最新亲测免授权+可用版
- iOS开发人员必看的精品资料(100个)——下载目录
- 计算机管理服务报错mmc,mmc错误,注册表没有mmc
- Matlab绘图技巧--如何去除图上方和右方刻度
- 总结使人进步,遵循事物的发展规律
- 微信电脑版DAT图片文件转JPG/PNG图片的简单工具
热门文章
- 局域网访问文件提示服务器内存不足,“服务器存储空间不足”的问题
- 在服务器上安装tensorflow-gpu版本及其使用
- Java中XML运用总结
- msfvenom生成木马攻击-Windows10实现自己黑自己
- IPU VPU GPU
- Html中文本域中加图片,如何在文本框中加图片
- 微信小程序分享功能(微信好友,朋友圈)
- Node + WebSocket + Vue 聊天室创建群聊/加入群聊功能 – 第五章
- 【CSS】三行实现一个黑白网格背景(渐变)
- 力扣1438——绝对差不超过限制的最长连续子数组(滑动窗口+单调队列)