VCARD手机相机扫码或微信扫码,直接保存到通讯录
VCARD手机相机扫码或微信扫码,直接保存到通讯录将以下内容生成二维码, 使用手机扫码时将自动弹出保存通讯录,兼容Android/IOS
BEGIN:VCARDVERSION:3.0N:名字ORG:公司名字TITLE:职位新人研发TEL;TYPE=WORK:18888886686TEL;TYPE=HOME:18888888888ADR;TYPE=HOME:;;地址1;;;;LABEL;TYPE=HOME:地址2, EMAIL:email@gmail.comURL:www.abc.comBDAY:2023-04-23REV:2023-04-23T01:21:04ZEND:VCARD
electron 解决socket端口被占用问题 启动socket服务,自动尝试可用接口
原理是本地写一个config.json,把初始端口放进去,每次启动electron的socket服务时如果发现端口被占用,就更新config.json里的端口号加1,并保存到config.json,然后退出并重启electron,直到找到可用的端口
{"port":1081}
const { app, BrowserWindow, protocol, dialog } = require("electron");const path = require("path");const { Menu } = require("electron");const myMenu = require("./src/menu.js");const WebSocket = require("ws");const fs = require("fs");//wss通讯服务 let wss = { ...
第一次参加半马
这周末和女朋友一起参加半马,青岛西海岸风景真不错,新铺的马路贼宽敞,七点多就开始交通管制了,我们只能打车到附近然后走过去
比赛现场很热闹,没文化的我现场只能来一句只能来一句人好多啊,气氛真的很好,菜腿第一次参加没敢直接报名半马,报了五公里健康跑😄
坚持不懈的青春万岁 加油💪奥力给
[{"url":"https://ihogu-1251903635.cos.ap-shanghai.myqcloud.com/site/blog/img/2023/1%20%281%29.jpg","alt":""},{"url":"https://ihogu-1251903635.cos.ap-shanghai.myqcloud.com/site/blog/img/2023/1%20%282%29.jpg","alt":""},{"url":"https://ihogu-1251903635.cos.ap-shanghai.myqcloud.com/site/blog/img/2023/1%20%283%29.jpg","alt":""},{"url":"https://ihogu- ...
JS飞入飞出动画 加速动画 换入换出效果
JS飞入飞出动画 加速动画 换入换出效果 * @param elem {HTMLElement} 执行动画的HTML元素 * @param params {JSON} 动画执行过过程中需要修改的HTML属性 * @param duration {Number} 可选,动画执行时间,单位毫秒 * @param easing {String} 可选,动画执行的方式,缓入easeIn、缓出easeOut
Go排序结构体struct中字段提升性能,降低内存使用率
将第一个struct改写为第二种可以通过排序结构体struct中字段提升性能,降低内存使用率
type BadStruct struct { age uint8 IdCardNumber uint64 DateOfBirth uint16}type GoodStruct struct { age uint8 DateOfBirth uint16 IdCardNumber uint64}
go ioutil包1.16起弃用 使用io包代替
20 年 10 月份,Go 掌舵人 Russ Cox 已经有废弃 ioutil 包的提案[1],废弃原因是:io/ioutil, like most things with util in the name, has turned out to be a poorly defined and hard to understand collection of things.
后续的几次代码提交也证实了这一点,从 Go 1.16 开始会废弃 io/ioutil 包,相关的功能会挪到 io 包或 os 包
相关连接 https://github.com/go-critic/go-critic/issues/1019
例如 ioutil.NopCloser方法, 改为io.NopCloser方法即可
go sha256withRSA签名 base64
生成密钥文件GenerateRSAKey(2048)//模拟发送方//要发送的消息msg := []byte("hello world")//生成签名sign := GetSign(msg, "private.pem")fmt.Println("signlen lenlen", string(sign))//模拟接收方//接受到的消息acceptmsg := []byte("hello world")//接受到的签名acceptsign := sign//验证签名result := VerifySign(acceptmsg, acceptsign, "public.pem")fmt.Println("验证结果:", result)