Lastest

支持多种登录方式的用户表设计

支持多种登录方式的用户表设计 最原始的用户登录,user表 user_id username password 用户数据 1 xxxx 123456 用户数据 2 yyyy 123456 用户数据 select * from user where user = :user and password = :password 搞定了 如果要加入微信登录如何破 加三个字段? user_id username password wechat_id wechat_access_token wechat_expires 1 xxxx 123456 sasdada qwerty 00000000 再添加qq登录呢?再加三个字段,显然是要累死人的 靠谱的做法 用户信息和登录分开,登录分为本地登录和第三方登录 user表 user_id 用户数据 1 用户数据 2 用户数据 本地登录表 user_id username password 1 xxxx 123456 2 yyyy 123456 第三方OAuth登录表 id user_id oauth_name oauth_id oauth_access_token oauth_expires 1 A1 weibo W...

gomod使用方法

全在这里了 https://zhuanlan.zhihu.com/p/60703832

根据json生成golang struct

根据json生成golang struct https://mholt.github.io/json-to-go/ 输入 {"age":1, "firstName":"LeTian", "lastName":"Chu", "birthday":"2000-01-30"} 输出 type AutoGenerated struct { Age int `json:"age"` FirstName string `json:"firstName"` LastName string `json:"lastName"` Birthday string `json:"birthday"` }

英文五种基本句型

英文五种基本句型 主语 + 不及物动词 主语 + 及物动词 + 宾语 主语 + 及物动词 + 双宾语 主语 + 及物动词 + 宾语 + 宾补 主语 + 系动词 + 表语 1. 主语 + 不及物动词 the telephone rang 英语中按动词后是否可以直接跟宾语,将动词分成两种:及物动词(vt.),和不及物动词(vi.)。及物动词后可以直接跟宾语;不及物动词不可以直接跟有动作的对象(宾语),如果要跟宾语,需要在不及物动词后增加介词,比如to/of/at "及物"说明需要"物"来完成一个动作,这个动作是有对象的,这个对象就是他后面要加的宾语 字典词性: vi. 不及物动词 vt. 及物动词 v./verb. 动词,没有标定及物或者不及物如何判断?看例句! 动词后面加代词/名词,就是及物动词 动词后面什么都没有了,就是不及物动词 动词 + 介词 + 宾语,不及物动词 wait for train 2. 主语 + 及物动词 + 宾语 I love animals I hate you 3. 主语 + 及物动词 + 双宾语 He lent me (宾语1) a book (宾语2) He lent a book to me (两个宾语之间用to联用) 4. 主语 + 及物动词 + 宾语 + 宾补 He is f...

flutter gesture空白区域不响应ontap解决方法

问题描述 Widget buildServerItem(BuildContext context, Server server){ return Column( children: <Widget>[ seperateLine, Container( padding: const EdgeInsets.only(top:15.0, left:20.0, right:20.0, bottom: 15.0), child: GestureDetector(![QQ截图20191030163401.png][1] onTap:() => print("say hello"), child: Row( children: <Widget>[ Expanded( child: Row( children: <Widget>[ Image.asset("assets/images/server.png"),//Icon(Icons.storage, color:Color(0xFF0...

windows安装gomicro

问题 安装gomicro发现各种莫名其妙的错误。 重点注意 翻墙,不知道某些孙子处于什么心态把golang/x墙了,祝尔等阖家欢乐 升级golang 1.13

chrome console监控客服回复

背景 二半夜在某服务器网站提交了一个ticket,时间紧迫,我需要第一时间看到对方回复,但我又不想坐在电脑前面干等,如何破? 是不是可以写一个js脚本监控页面内容变动,然后通过某种方式叫醒我? 实现 chrome console里实现自动刷新页面 参考链接1里的方法可以做到了。 timeout=prompt("Set timeout (Second):"); count=0 current=location.href; // 获取当前的URL if(timeout>0) setTimeout('reload()',1000*timeout); else location.replace(current); // 时间间隔不大于0,仅刷新一次 function reload(){ setTimeout('reload()',1000*timeout); // timeout秒后执行reload函数,实现无限循环刷新 count++; console.log('每('+timeout+')秒自动刷新,刷新次数:'+count); fr4me='<frameset cols=\'*\'>\n<frame src=\''+current+'\'/>'; fr4me+='</fr...

一段php病毒分析

网站上被人挂了木马,拿下来分析下吧. 源代码 <?php $wyfxfq = '0vktmocuneiy#gr9ldx1\'b_-p45H*sa8736';$hqpnhcc = Array();$hqpnhcc[] = $wyfxfq[27].$wyfxfq[28];$hqpnhcc[] = $wyfxfq[12];$hqpnhcc[] = $wyfxfq[34].$wyfxfq[15].$wyfxfq[32].$wyfxfq[19].$wyfxfq[6].$wyfxfq[9].$wyfxfq[33].$wyfxfq[21].$wyfxfq[23].$wyfxfq[34].$wyfxfq[33].$wyfxfq[30].$wyfxfq[15].$wyfxfq[23].$wyfxfq[25].$wyfxfq[26].$wyfxfq[26].$wyfxfq[31].$wyfxfq[23].$wyfxfq[15].$wyfxfq[25].$wyfxfq[31].$wyfxfq[31].$wyfxfq[23].$wyfxfq[30].$wyfxfq[15].$wyfxfq[34].$wyfxfq[30].$wyfxfq[26].$wyfxfq[33].$wyfxfq[34].$wyfxfq[0].$wyfxfq[26].$wyfxfq[21].$wyfxfq[21].$wyfx...

js中带var定义变量和不带var的区别

面试时候被问到var a=1和a=1的区别没打上来,遗憾啊 测试 先来测试一波var a=1和a=1的区别吧 console.log(b) // 会报错 b = 1 VM249:1 Uncaught ReferenceError: b is not defined at <anonymous>:1:13 console.log(a) // 后续使用var定义变量,不会报错,没有初始化会显示undefined var a = 1 VM215:1 undefined undefined 分析 猜测js在启动的时候会首先扫描所有var定义的变量,定义出来,所以console.log时候不会报错

Socket的11种状态

Socket的11种状态 Socket状态汇总 客户端 SYN_SEND FIN_WAIT1 FIN_WAIT2 CLOSING TIME_WAIT 服务器 LISTEN SYN_RECV CLOSE_WAIT LAST_ACK 共有 CLOSED ESTABLISHED