首页
每日60秒早报
毒鸡汤
壁纸
更多
留言
友链
Search
1
李跳跳进阶指南
874 阅读
2
原神那些写进作文就能得高分的经典台词
815 阅读
3
学习通一键签到,告别缺勤。全网最强学习通签到软件,大学生的签到神器!
777 阅读
4
凉了的李跳跳,又满血复活了!
734 阅读
5
青龙面板基本配置和命令
321 阅读
零碎琐事
兴酣落笔
学习成长
科技编程
文学艺术
登录
/
注册
Search
晓建の破站
累计撰写
130
篇文章
累计收到
26
条评论
首页
栏目
零碎琐事
兴酣落笔
学习成长
科技编程
文学艺术
页面
每日60秒早报
毒鸡汤
壁纸
留言
友链
注册丨登录
搜索到
54
篇与
的结果
2024-07-28
微信小程序实现的网页扫码授权登录
微信小程序实现的网页扫码授权登录,无论是个人小程序还是企业小程序,都可以调用wx.login接口获取到openid实现微信鉴权快速扫码登录!摘要现如今,扫码登录已经在网站普遍应用,其中微信扫码登录极其普遍。但是微信扫码登录的实现方法有多种,大多数都是具有一些门槛的。例如企业、需要服务号、需要认证等,这些都是个人开发者,个人创作者无法使用的。但其实,微信小程序也可以作为一个授权登录的“中介”,因为微信小程序有一个 wx.login 的API可以轻松实现获取openid来作为微信用户的鉴权。实现调用微信小程序生成葵花码的API生成一个带有 scene 参数的小程序码,其中 scene 作为小程序码的唯一参数,用于记录和进行本次扫码登录。以下是服务端的代码结构:访问 createQrcode 目录即可生成一个小程序码。扫码后打开小程序此时,网页端也会有相应的变化,会立刻切换为已扫码。当在小程序点击 授权登录 后,网页端会切换为 登录成功,如果你配置了 callback,登录成功后会自动跳转至 callback 并且携带 token 参数。程序逻辑具体逻辑如下:配置只需要配置 Db.php 这个文件里面的一些参数。// 数据库配置 $配置=数组( 'db_host' => 'xxxxxxxxxxxxx', // 数据库服务器 'db_port' => 3306, // 端口 'db_name' => 'xxxxxxxxxxxxx', // 数据库名称 'db_user' => 'xxxxxxxxxxxxx', // 数据库账号 'db_prefix' => '', // 表前缀,表名被我写死了所以这个用不上但是必须留空不然报错 'db_pass' => 'xxxxxxxxxxxxx', // 数据库密码 'appid' => 'xxxxxxxxxxxxx', // 小程序appid 'appsecret' => 'xxxxxxxxxxxxx', // 小程序appsecret ); // 除了配置这个文件的这些参数之外 // 如果你的小程序已经审核通过上线 // 还需要去 createQrcode/createQrcode.php 里面修改一个参数 // ------------------------------------------------ ------ // 在代码的101行 "env_version" => "develop" // 开发的时候这个参数是develop,小程序审核通过发布上线之后改为release // 因为用户无法打开开发版的小程序的,所以审核通过上线的小程序你需要改为release // 代表创建的小程序码是线上版本而不是开发版本数据库创建:直接在SQL执行的窗口粘贴:创建表 `scanlogin_loginAuth` ( `id` int(10) 主键自动递增不为空, `场景` varchar(32) NOT NULL, `openid` varchar(32) 默认为 NULL, `createTime` varchar(32) 默认为 NULL, `authTime` varchar(32) 默认为 NULL, `status` int(1) NOT NULL DEFAULT '1', `expire` int(1) NOT NULL DEFAULT '1', `token` varchar(32) DEFAULT NULL COMMENT '登录成功的Token' ) 引擎=InnoDB 默认字符集=utf8;以phpMyAdmin操作为例:微信小程序配置及发布下载小程序端的代码,在微信开发者工具导入项目,打开 project.config.json 修改 appid 为你的小程序后进行编译。在 app.js 修改你的服务器域名以及后端服务所在的目录名称,如果是根目录,只需输入一个 / ,如果是二级目录,输入 /目录名/ ,三级目录输入 /二级目录名/三级目录名/ ,其它同理。域名无需携带 http或https你所配置的服务器域名必须要在微信小程序管理后台的 开发管理->开发设置->服务器域名->request合法域名进行配置后,并且需要备案,开启https访问,才能生效。 小程序发布之后,微信扫一扫,扫描网页生成的小程序码,才能正常使用。使用假设你的服务器域名是 www.qq.com后端代码部署在二级目录,目录名称是:xcxScanLogin那么你可以直接在你的网页通过a标签跳转至:www.qq.com/xcxScanLogin/createQcode即可打开扫码页面。如果你需要进行回调,那么可以直接在Url后面加入callback假设你的callback页面是:https://www.qq.com/call/www.qq.com/xcxScanLogin/createQcode/?callback=https://www.qq.com/call/扫码登录授权成功后,将会跳转到callback地址并携带token参数。例如:https://www.qq.com/call/?token=xxxxxxxxxxxx这个token参数会被记录在 scanlogin_loginAuth 这个表的 token字段。如果你需要在你网站实现自己的页面或显示方式,例如点击登录弹出一个模态框,那么可以在你的网站通过异步请求:www.qq.com/xcxScanLogin/createQcode/createQcode.php将会返回JSON对象:{'code':200, 'msg' => '创建成功', 'scene' => 'xxxxxxx', 'qrcode' => 'xxxxxx.png'}code=200代表创建小程序码成功。 使用异步的方式代表你需要根据状态码判断扫码状态,可以查看 createQcode.php 的每个状态返回的状态码去编写,做好页面的轮询。 注意:'qrcode' => 'xxxxxx.png' 真实小程序码地址是 qrcode目录 里面的 xxxxxx.png ,即需要加上目录名才可以正常在页面显示小程序码。 即: ./qrcode/xxxxxx.png qrcode目录 里面的 xxxxxx.png 会在授权成功后自动删除,这个是临时图片文件。登录成功逻辑: createQcode/checkScanStatus.php 这个是轮询扫码结果,里面可以在登录成功的那步处理你的登录成功后的逻辑,例如储存SESSION、插入数据库记录、缓存等。程序作者TANKING GitHub
2024年07月28日
193 阅读
0 评论
2 点赞
2024-04-02
Lan仿朋友圈系统开源源码,可用于表白墙等微商相册,商品图册等
简介Lan仿朋友圈系统开源,可用于表白墙等微商相册,商品图册等支持前端用户注册 支持消息提示 用户注册可设置必须验证邮箱账号(可防止部分用户恶意注册)支持匿名发布(可做表白墙)支持发布音乐 支持日夜模式、搜索功能、回到顶部 支持游客点赞及评论 可开启用户发布文章及评论审核(防止用户发布恶意内容)可管理全站用户支寺图片上传自动压缩大小 更多功能可自行探索!安装教程:推荐安装环境Nginx ≥1.22 PHP =7.4 MySQL ≥5.6访问 https://你的域名/install 进行安装截图演示https://xwsir.com/支持正版https://xwsir.cn/4217.html隐藏内容,请前往内页查看详情
2024年04月02日
45 阅读
1 评论
1 点赞
2024-03-16
typecho默认Markdown编辑器字体颜色和背景颜色代码
1.仅仅字体颜色<font color="red">这里是红色</font>效果如下:这里是红色2.添加背景颜色 <table> <td bgcolor=#FFFF0> <font color="#FF0000">大西瓜</font> </td> </table>效果如下: 大西瓜 3.继续添加粗体 <table> <td bgcolor=#FFFF0> <strong><font color="#FF0000">大西瓜</font></strong> </td> </table>效果如下: 大西瓜
2024年03月16日
33 阅读
0 评论
1 点赞
2024-03-16
李跳跳进阶指南
李跳跳是什么?一款用来跳过开屏广告和弹窗的安卓应用。李跳跳的原理?利用安卓系统的无障碍权限,帮助用户自动点击广告上的跳过按钮。自定义规则1. 开屏广告规则:{"keywords":["xxx"]}、{"keywords_append":["xxx"]}李跳跳默认规则已经可以跳过绝大部分开屏广告了,但李跳跳也不是万能的。当我们遇到无法跳过的开屏广告时,可以使用这条规则:{"keywords":["xxx"]}。其中xxx可以是跳过按钮的文案,比如{"keywords":["关闭广告"]};也可以是跳过按钮的id或bounds,比如:{"keywords":["tv_close_button"]}、{"keywords":["900,160,1170,250"]}。知识点:什么是跳过按钮的id和bounds?参数 keywords 和 keywords_append 的区别:keywords会覆盖默认规则。keywords_append在默认规则的基础上,追加规则。2. 弹窗规则:{"popup_rules":[{"id":"xxx","action":"xxx"}]}我们也可以使用李跳跳来关闭应用内的弹窗 ,比如下图所示的抖音更新弹窗,就可以用{"popup_rules":[{"id":"检测到更新","action":"以后再"}]}规则进行关闭。这条规则的意思是:当检测到「检测到更新」这几个文字的时候,就自动点击「以后再」这个按钮。细心的你会怀疑上面的规则是不是写错了,为什么参数action的值不是以后再说而是以后再?其实我是故意为之,目的是为了引出以下知识点:规则里面的文字默认情况下是模糊匹配的。比如改成以后、以后再说、再说,甚至后再都是可行的。规则里面的文字默认是模糊匹配的,自然也支持首尾匹配和全匹配,只需在文字前面加上特定的符号就行。参照下面的举例张三,比如+检测到的意思是匹配以检测到开头的文字;比如-用户体验的意思是匹配以用户体验结尾的文字;比如=以后再说的意思是匹配和以后再说完全相等的文字。其中符号&是用来连接任意个条件的,你可以把它理解为且。 举例张三:{"popup_rules":[{"id":"+检测到&-用户体验","action":"=以后再说"}]} 有时候我们会遇到一些弹窗,它们的关闭按钮不是文字,而是一个叉号❎ ,比如下图所示的美团弹窗,此时我们又该如何写规则呢? 分两种情况: 如果这个弹窗可以通过手机的返回键关闭,我们可以这样写规则{"popup_rules":[{"id":"=天天神券","action":"GLOBAL_ACTION_BACK"}]}。其中的GLOBAL_ACTION_BACK是固定不变的。 如果这个弹窗不可以通过手机的返回键关闭,我们需要知道叉号的id或bounds才行。假设这个弹窗的叉号的id是tv_close_button,我们可以这样写规则{"popup_rules":[{"id":"=天天神券","action":"tv_close_button"}]}。 但很多时候叉号(弹窗的关闭按钮) 不一定会有id,不过也没关系,因为它一定会有bounds。假设叉号的bounds是500,900,620,1020,我们可以这样写规则{"popup_rules":[{"id":"=天天神券","action":"500,900,620,1020"}]}。 知识点:如何获取关闭按钮的id或bounds? 3. 设置强制点击:{"click_way_popup":1} 详情参考:我的规则正确,但无法关闭弹窗怎么办? 4. 设置搜索次数:{"search_times_popup":5} 详情参考:我的规则正确,但无法关闭弹窗怎么办? 5. 设置延迟点击:{"delay":200} 开屏广告延迟点击:{"delay":200} 弹窗延迟点击:{"delay_popup":200} 温馨提示:单位毫秒,1秒等于1000毫秒。 6. 设置点击次数:{"popup_rules":[{"id":"xxx","action":"xxx",times:2}]} 有些规则是不用点击的,此时我们可以把点击次数times设置为0;有时候我们会遇到两个不一样的弹窗,但它们可以用同一条规则来关闭,此时你可以选择输入两条一模一样的规则,或者输入一条规则但把它的点击次数times设为2; 7. 联合规则:{"unite_popup_rules":true} 我们上面举的例子,关闭抖音更新弹窗和关闭美团天天神券弹窗,这两个任务都是瞬间任务,用一条规则表示就行。 但有些任务是持续任务,它们的耗时是不确定的,至少需要两条规则表示才行。比如有一个按钮需要倒计时100秒后才能点击,此时我们可以这样写规则: 把这个过程的中间态用一条规则表示:{"id":"还剩&秒","action":"还剩&秒",times:0} 把我们需要点击的按钮用一条规则表示:{"id":"弹窗","action":"关闭按钮"} 设置参数unite_popup_rules的值为true。 所以如果想点击一个100秒后才能点击的按钮,完整规则应该是:{"popup_rules":[{"id":"还剩&秒","action":"还剩&秒",times:0},{"id":"弹窗","action":"关闭按钮"}],"unite_popup_rules":true} 温馨提示:利用联合规则我们可以完成很多🌱耗时不确定的任务🌱,比如应用自动安装、微信自动查看多张原图等。 课后作业: 参考应用一键安装规则,实现应用自动安装。 8. 根据CheckBox的状态点击控件 CheckBox控件有两种状态,一种是选中状态,另一种是未选中状态。假设某个CheckBox控件的bounds是100,200,300,400,如果我们要点击它的其中一种状态,可以在bounds的后面追加数字0或1来表示,比如: 已选中状态:100,200,300,400,1 未选中状态:100,200,300,400,0 什么是控件的id和bounds? 我们把APP界面上的元素,比如按钮、图标、输入框这些统称为控件。比如取消按钮它就是一个文本控件,它的文字就是取消。我们写规则时可以根据取消这两个字来定位这个按钮。但有些按钮它是没有文字的,比如上面美团弹窗的叉号按钮。此时我们需要用到控件的id或bounds来定位这些没有文字的按钮。 但什么是控件的id和bounds呢?控件的id就是控件的身份证(普通用户可以简单这样理解);控件的bounds就是控件的大小和位置信息。 温馨提示:一个控件是有可能没有id的,但一定会有bounds。 如何获取控件的id或bounds? 我们可以通过特定的工具来获取到控件的相关信息,我为大家找到了一个叫autojs的开源APP,可以到这里下载,密码:1233。 autojs教程:利用 autojs 获取控件信息。 常见问题 1. 我的规则正确,但无法关闭对应弹窗怎么办? 首先,判断你的任务是瞬间任务还是持续任务?如果是瞬间任务, 在确保你的规则是正确的前提下,可以试试以下两个方案: 如果有跳过提示,设置强制点击就行:{"popup_rules":[], "click_way_popup":1} 如果没跳过提示,延长搜索次数就行:{"popup_rules":[], "search_times_popup":5} 温馨提示:搜索次数 search_times_popup 越小越省电,最好是个位数。 如果是持续任务, 可以参考上面的联合规则章节。 2. 出现误点怎么办? 首先,先删除自己的自定义规则,看看是否是自己的规则造成误点。 其次,在少数情况下,李跳跳的默认规则也会出现误点 (错误地点击了其它地方),最简单的解决方案就是在李跳跳里面找到目标APP,把它加入白名单。 其次,你也可以用参数keywords来覆盖默认的规则,也就是说你自己告诉李跳跳应该点击哪里,比如:{"keywords":["500,900,620,1020"]}。 3. 不知道某个弹窗属于哪个APP怎么办? 通过autojs软件获取这个弹窗任意控件的控件信息,复制控件信息里面的包名 (packageName) 信息,通过包名在李跳跳里面搜索对应APP就行。
2024年03月16日
874 阅读
3 评论
3 点赞
2024-03-16
利用autojs获取控件信息
首先安装 autojsautojs:点击这里下载,密码:1233打开悬浮窗点击蓝色按钮点击布局范围分析点击查看控件信息复制控件相关信息
2024年03月16日
89 阅读
2 评论
0 点赞
2024-03-16
李跳跳实用规则分享一键安装
本文章包括「一键安装」和「一键取消关注指定公众号」。
2024年03月16日
79 阅读
2 评论
0 点赞
2024-01-30
搭建一个属于自己的api随机图教程
超级简单 由于没有权限,咱们一步概括,如果搭建在本地速度又快有两种方法,看你用那种。第一种方法(以图片源文件进行随机)第1步新建一个文件夹,命名为:img(这个文件里放你需要的图片)第2步:新建一个index.php文件,写入以下代码 (这个文件就是api地址)<?php $img_array = glob("img/*.{webp,gif,jpg,png}",GLOB_BRACE); $img = array_rand($img_array); $dz = $img_array[$img]; header("Location:".$dz); ?>第二种方法(以图片链接进行随机)第1步:创建一个img.txt文件 (这个文件里放你的储存的图片链接,一行一条)第2步:新建一个index.php文件,写入以下代码 (这个文件就是api地址)<?php //存有链接的文件名,这里是存放图片链接的txt文件 $filename = "img.txt"; if(!file_exists($filename)){ die('文件不存在'); } //从文本获取链接 $pics = []; $fs = fopen($filename, "r"); while(!feof($fs)){ $line=trim(fgets($fs)); if($line!=''){ array_push($pics, $line); } } //从数组随机获取链接 $pic = $pics[array_rand($pics)]; //返回指定格式 $type=$_GET['type']; switch($type){ //JSON返回 case 'json': header('Content-type:text/json'); die(json_encode(['pic'=>$pic])); default: die(header("Location: $pic")); }后面 附上300张动漫图,搭配第2种方法隐藏内容,请前往内页查看详情
2024年01月30日
45 阅读
0 评论
0 点赞
2024-01-26
yarn install 提示 Error: certificate has expired
一般出现这个问题是因为开了代理服务器访问。解决方法:yarn config set "strict-ssl" false -g
2024年01月26日
17 阅读
0 评论
0 点赞
2024-01-02
wxid加好友的方法
摘要微信还没设置微信号,就只能获取到对方的wxid,这个wxid是无法直接搜索微信号进行添加的。那么如何通过这个wxid进行添加好友呢?以下方法可以尝试。方法<a href="weixin://contacts/profile/换成你要加的wxid">wxid加好友</a>以上代码,需要在Android手机的微信,通过聊天对话框发送出去,就成了可点击的字体,点击进去就可以直达加好友界面。
2024年01月02日
53 阅读
0 评论
1 点赞
2023-12-17
通过Zepp Life同步微信步数,让你的微信运动更有意义(微信刷步)
前期教程1.我们先去应用市场或者浏览器下载Zepp Life(原小米运动)APP 2.安装完成后,打开Zepp,必须点击注册 注册使用的邮箱地址格式:手机号@163.com(QQ可能不行,最好是网易的163邮箱) 例如:155xxxxxxx@163.com 3.点击右下角「我的」,在界面内找到「第三方接入」并点击。 4.在页面内选择自己想要刷步的APP并进行绑定 微信绑定好了之后不能取消关注【Amazfit 跃我】 取消关注就是解除绑定 记住你刚刚注册使用的邮箱以及密码,改步数要用的后期教程打开网站输入你的用户名(邮箱)及密码,填写你要修改的步数即可1、网址: 点我进入 2、网址: 点我进入 那个能用用哪个!
2023年12月17日
284 阅读
4 评论
2 点赞
1
2
3
...
6
首页
复制
搜索
前进
后退
重载网页
和我当邻居
给我留言吧