自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 React Native 开发心得分享

有一段时间没更新了,花了点时间研究了下 React Native(后续用 RN 简称),同时也用该技术作为我的毕设项目(一个校园社交应用,仿小红书),经过了这段时间的疯狂折腾,对 RN 生态有了一定的了解,我想是时候可以分享点一些东西了。

2024-05-14 15:50:42 607

原创 有了 Prisma,就别用 TypeORM 了

要说2024 年 Node.js 的 ORM 框架应该选择哪个?毫无疑问选 Prisma。至于为何,请听我细细道来。

2024-01-13 18:22:09 1260 3

原创 Nest grpc 实践之调用 python ddddocr 库

本文将使用 nest 通过 grpc 的方式来调用 python 的 ddddocr 库来识别验证码。

2023-07-29 09:14:52 422

原创 nest.js 添加 swagger 响应数据文档

然而通常情况下,都会对返回数据进行一层包装,如其中 data 数据就是原始数据。要实现这种数据结构字段,首先定义一个自定义类用于包装,如接着在定义一个拦截器,将 data 数据用 ResOp 包装,如下拦截器代码如下???此时返回的数据都会转换为的形式,这部分不为就本文重点,就不赘述了。回到 Swagger 文档中,只需要改写成,就可以实现下图需求。然后对于庞大的业务而言,使用的写法,肯定不如来的高效,有没有什么办法能够用后者的方式,却能达到前者的效果,答案是肯定有的。

2023-07-18 02:42:58 1765

原创 Typescript 全栈最值得学习的技术栈 TRPC

本文介绍了 tRPC 技术以及它与传统 RESTful API 的区别。同时 tRPC 可以帮助人们更快地开发全栈 TypeScript 应用程序,同时无需传统的 API 层,并保证应用程序在快速迭代时的稳定性。

2023-03-08 14:34:14 4257 1

原创 将 Supabase 作为下一个后端服务

本文介绍了如何使用 Supabase 作为后端服务,使开发人员可以更快地构建和部署应用程序,无需配置数据库或编写复杂的身份验证代码。将使用 Nuxt.js 和 Supabase,以实现一个图床网站为例,来演示如何在前端中使用 Supabase API 和 Storage 服务。

2023-02-18 20:05:47 2868 4

原创 Deno不只是个Javascript运行时

以下是官方所介绍的亮点,我对其做了翻译提供web 平台功能,采用网络平台标准。例如,使用 ES 模块、Web worker 和支持fetch()。默认安全。除非显式启用,否则无法访问文件、网络或环境。支持开箱即用的TypeScript。提供单个可执行文件 (deno为编辑器提供内置的开发工具,如代码格式化程序 (deno fmt)、linter (deno lint)、测试运行程序(deno test)和语言服务器。拥有一组经过审查(审核)的标准模块,保证与 Deno 一起使用。可以将脚本。

2023-01-20 03:03:06 1862

原创 深谈个人对新技术的看法

目前技术圈的发展速度可谓是有目共睹,尤其是前端,每隔一段时间就出新的技术,可以说让很多初学者非常畏惧,没有一个明确的方向不知道从何学起。同时也有很多人,只局限于使用手头已掌握的技术,而不愿去尝试新技术。举个例子,如今 vue3 都已经正式发布,但仍还有停留在 vue2 不愿尝试 vue3 的开发者。而 java 都发布 18 版本了,可还有很多人都还使用着 java8,这种现象可以说是非常常见了。

2022-12-02 01:38:21 1569

原创 GraphQL 实践与服务搭建

GraphQL翻译过来为图表 Query Language,我所理解的理念是通过 json 数据格式的方式去写 SQL,而且有种前端人员在写 sql 语句。在我看来 GraphQL 更多是业务数据特别复制的情况下使用,往往能够事半功倍。但对于本文中示例的代码而言,GraphQL 反倒有点过于先进了。如今看来,GraphQL 还处于不温不火的状态,目前更多的站点主流还是使用 Restful API 架构。

2022-11-24 21:23:56 1437 1

原创 Protocol 协议复现模板

一个用于快速复现请求协议的 Web 开发模板。

2022-10-30 21:41:21 421

原创 rollup.js 初体验

最近准备写一个工具包,由于要将其发布到npm上,必然就要兼容不同模块(例如 CommonJS 和 ESModule),通过打包器可以很轻松的将代码分别编译成这两种模块。恰好正式发布,也算是来体验一下。truncate。

2022-10-18 00:32:48 1103

原创 Gitea 与 Drone 实践

之前搭建过 Gitlab,但是就只是搭建而已,并未实际使用,因为我大部分的代码还是存放在上。并且大部分项目都是在上运行的(Vercel 是真好用),但是最近国内访问 vercel 情况不容乐观,貌似被墙了呜呜。然后 Gitlab 的资源占用非常严重,几乎占用了一半的服务器性能,可查看运行状态。与此同时,随着很多私有项目越来越多,使用 git 私有仓库以及 Vercel 部署,肯定不如自建私有 git 服务和自有服务器部署使用体验来好。于是就想搭建一个轻量级仓库,同时支持 CI/CD。

2022-09-28 15:39:20 1853 2

原创 记github学生认证

就在前段时间 github copilot 不是内测结束了,然后要开始收费了,收费标准 一个月 $10 / 一年 $100。这费用对于我本不富裕的生活雪上加霜。而 coplot 对教育认证有免费资格使用,于是乎就有了此次较为艰辛的 github 学生认证。

2022-09-06 10:44:04 26745 52

原创 centos7.9.2009重装python和yum

准备在服务上部署一个项目,但是这个项目要求python版本必须大于3.6,而centos默认是2.7的,于是去网上搜索升级文章。

2022-09-03 19:36:47 2144 4

原创 Strapi 实现用户注册与登录

在官方博客中演示如何实现注册与登录。实际重点部分是 Strapi 的,可以说这个插件让开发者不用再为项目考虑的用户登录注册与鉴权相关。

2022-08-25 14:25:48 1895 1

原创 Docusaurus搭建个人博客

我个人是比较满意该博客的,搜索,SEO,暗黑模式,博客列表,没有其他博客系统那么花里胡哨的,该有的整洁都有了,最主要是我个人不喜欢文章配背景图,尤其是那种与文章毫不相干的图,图片也许能减少阅读疲倦感,但欣赏的是内容的,而不是背景。而且又是基于 Docusaurus,到时候是用来做一个项目的文档也方便许多。😄也就不多浪费口舌了,博客既然搭建好了,那么接下来就可以专心的编写文章了。...

2022-08-04 05:52:03 296

原创 基于Nuxt3的API接口服务网站

体验了一周的Nuxt3,整个的开发过程不敢说特别顺利,因为存在一定的兼容和Bug。目前Nuxt3的目前还处于rc版,实际项目还得考虑上线。不过个人还是非常推荐Nuxt这个框架,在代码编写与开发体验上实在是太香了,不出意外后续的web项目都会采用Nuxt3来构建,期待正式版的发布。......

2022-07-20 02:23:10 3929 2

原创 写一个VSCode插件

自从使用过 VSCode 后就再也离不开 VSCode,其轻量的代码编辑器与诸多插件让多数开发者爱不释手。同样我也不例外,一年前的我甚至还特意买本《Visual Studio Code 权威指南》的书籍,来更进一步了解与使用。在购买这本书时就想写一个 vscode 插件(扩展),奈何当时事务繁忙加之不知做何功能,就迟迟未能动手。如今有时间了,就顺带体验下 vscode 插件开发,并记录整个开发过程。插件地址:VSCode-extension开源地址:kuizuo/vscode-extension (gith

2022-07-13 00:48:03 1067

原创 Vercel部署个人博客

vercel 部署静态资源网站极其方便简单,并且有可观的访问速度,最主要的是免费部署。如果你还没有尝试的话,强烈建议去使用一下。vercel 介绍注册账号进入Vercel官网,先去注册一个账号,建议注册一个Github账号后,使用GIthub账号来登录Vercel。部署网站进入 Dashboard点击 New Project这里可以从已有的 git repository 中导入,也可以选择一个模板。这里登录我的 Github 账号选择仓库,然后点击 blog 仓库旁的 Impor.

2022-05-11 18:59:50 5026 8

原创 SpringBoot项目目录结构

目录结构展示图controllercontroller 目录下对应的也就是控制器,用于接收用户的请求(get,post 等),如下面代码@RestController@RequestMapping("/user")public class UserController { @Resource private UserService userService; @GetMapping("list") public List<User> list() {

2022-05-06 14:35:50 7654 2

原创 搭建GitLab代码管理仓库

我只要有代码的项目,都会放到 Github 上,无论公开还是私有项目。一是相当于在云端备份了一份代码,二是可以很方便的分享给别人。但对于私有项目而言存放在别人那总归不好,而且Github 时常会出现无法访问的情况(即使搭了梯子)。所以就打算搭建一个私有的仓库,基于GitLab。可以访问 kuizuo · GitLab 来查看搭建效果。页面概览[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3haZ2tF8-1649957718724)(C:\Users\kuizuo\.

2022-04-15 01:36:13 4738

原创 vite+vue3搭建uniapp开发环境

最近想搞个移动端或小程序的 Vue3 项目,所以选择跨端开发平台就显得十分重要。在业内主要有两个跨端开发平台,Taro 与 uniapp,但 uniapp 貌似对 vue3 的支持不是特别友好。所以让我在 Taro 和 uniapp 之间抉择了一段时间,最终还是尝试选择相对熟悉的 uniapp 来进行开发。:::caution 前排提醒目前 uniapp 对 Vue3 的支持还处于 alpha 版,即开发阶段,大概率是会遇到很多问题的。:::开发环境搭建建议安装 HBuilderX,主要是 u.

2022-03-27 15:05:05 15330 10

原创 搭建Electron+Vue3开发环境

原文链接: 搭建Electron+Vue3开发环境 - 愧怍的小站之前用electron-vue写过一个半成品的桌面端应用,但是是基于Vue2的,最近又想重写点桌面端应用,想要上Vue3+TypeScript,于是便有了这篇文章总结下具体的搭建过程。Vue CliVue CLI 有一个插件vue-cli-plugin-electron-builder,可以非常方便的搭建electron环境。npm i @vue/cli -gvue create my-app根据自己项目的需求选择对应的依

2022-03-16 20:49:48 3271 1

原创 查询字符串与 JSON 互转

原文链接在发送 HTTP 请求的时候,要模拟一个登录请求的包,而抓到得包如下POST https://xxx.xxx.com/xxx/login HTTP/1.1Host: xxx.xxx.comConnection: keep-aliveUpgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.35

2022-03-16 11:33:18 1422

原创 基于Babel对JS代码进行混淆与还原操作

自写在线混淆与还原网站 JS代码混淆与还原 (kuizuo.cn)还原前言AST 仅仅只是静态分析,但可以将还原出来的代码替换原来的代码,以便更好的动态分析找出相关点。在还原时,并不是所有的代码都能还原成一眼就识破代码执行逻辑的,ast 也并非万能,如果你拥有强大的 js 逆向能力,有时候动态调试甚至比 AST 静态分析来的事半功倍。还原不出最原始的代码标识符是可以随便定义的,只要变量不冲突,我可以随意定义,那么就已经决定我们还原不出源代码的变量名,所以能还原的只有一些花指令,使其代码变好看,方

2022-02-01 20:11:40 3737 2

原创 JavaScript存储与操作二进制数据

为什么写在我编写js代码中,关于处理二进制数据了解甚少,好像都是用数组表示,但是成员又很模糊。尤其是在遇到一些http的post请求或websocket,发送二进制数据(字节)时,还有一些算法的翻译,数据的转化,协议的复现,都需要不断的从网络上查阅,并未系统的从文档教程中入手。于是写这篇的目的就是为了加固对二进制数据的理解,以及JavaScript中如何操作二进制数据的。ArrayBuffer其他语言java,易所表示的是字节数组,字节集,而在js中则称二进制数组(都是用来表示二进制数据的),要注意

2022-01-24 11:21:24 2759

原创 Docusaurus配置Gitalk评论插件

原文链接:Docusaurus配置Gitalk评论插件 - 愧怍的小站 (kuizuo.cn)之前使用 vuepress 的时候,使用的评论系统是Valine,可是匿名用户也能直接评论,虽说会过滤垃圾信息,但是后台查看评论与通知总感觉没有那么实在。然后换到了 docusaurus,并没有内置评论相关的,原本是打算自己写一个评论系统,MongoDB 存储评论数据相对方便些。然后这一拖就是拖到了过年前。。。无意间发现有一个插件Gitalk,基于 Github Issue 的,而我平常又经常刷 gith.

2022-01-22 19:47:38 1281 2

原创 Docusaurus搭建个人博客

博客地址: 愧怍的小站 (kuizuo.cn)源码地址:kuizuo/blog: 愧怍的个人博客 (github.com)时隔近半年没好好整理文章,博客也写的不像个人样。????大半年没更新博客,一直忙着写项目(写到手软的那种),然后无意间在 B 站看到一个 Up 主峰华前端工程师- 让你学会前端开发 (zxuqian.cn)推荐的一个基于 React 驱动的静态网站生成器,其实也可以理解为就是 React 版的 Vuepress(主要都是文档类为主)。第一眼看到的时候惊艳到我了,代码也开源了,

2022-01-22 19:45:49 1848

转载 react中css实现方式

原文链接: react中css实现方式 - 愧怍的小站 (kuizuo.cn)全局样式与传统 html 标签类属性不同,react 中 class 必须编写为 className,比如全局 css.box { background-color:red; width:300px; height:300px;}复制代码jsfunction Hello() { return <div className='box'> hello react

2022-01-14 06:49:16 268

原创 为什么使用pnpm

原文链接: kuizuo.cn/为什么使用pnpmpnpm文档前言在一个node项目中免不了node_modules依赖,假设项目A用的了Express依赖,同时项目B也用到了Express,并且两者所存放的位置不同,那么磁盘空间将会多出两份Express依赖,假设有100个项目,那么将会有有100倍的空间被浪费。这些空间还可以用磁盘空间来弥补,但是这100个项目如果都使用npm i去下载同样版本依赖,则是实实在在耗费网络资源去下载。pnpm能解决以下两点问题包安装速度极快; 磁盘空间

2022-01-08 05:12:10 558

原创 SpringBoot项目目录结构

原文链接: SpringBoot项目目录结构 - 愧怍的小站 (kuizuo.cn)目录结构展示图controllercontroller目录下对应的也就是控制器,用于接收用户的请求(get,post等),如下面代码@RestController@RequestMapping("/users")public class UserController { @Resource private UserService userService; @GetMapp

2022-01-08 02:31:24 2899

原创 JS实现函数缓存

原理闭包 柯里化 高阶函数例子:求和正常的循环累加代码function add() { let sum = 0 for (let i = 0; i < arguments.length; i++) { sum += arguments[i] } return sum}复制代码使用数组的reduce方法function add() { var arr = Array.prototype.slice.call(argument...

2021-11-22 22:17:00 907

原创 JS函数hook

前言我在阅读《JavaScript设计模式与开发实践》的第15章 装饰者模式,突然发现JS逆向中hook函数和js中的装饰者模式有点像,仔细阅读完全篇后更是对装饰器与hook有了更深的理解于是便有了这篇文章来记录一下该操作。hook直译的意思为钩子,在逆向领域通常用来针对某些参数,变量进行侦听,打印输出,替换等操作。正文示例代码function add(a,b){ return a + b}复制代码hook代码这是一个很简单加法函数,通过Hook能获取到这两个参数的值,相

2021-11-22 22:16:27 4251

原创 JS输出函数调用栈

最近在编写JS逆向hook类插件,然后需要获取当前代码执行时所在的位置,方便代码定位,于是就总结下JavaScript如何输出函数调用栈。演示代码function main() { let a = fun('hello world') console.log(a)}​function fun(a) { return a}​main()复制代码方法console.trace()使用如下function main() { le...

2021-10-15 10:07:42 4026

原创 RPC远程调用浏览器函数

愧怍正在上传…重新上传取消​2021年10月09日阅读 1·编辑RPC远程调用浏览器函数审核中原文地址:RPC远程调用浏览器函数 - 愧怍的小站 (kuizuo.cn)早闻 RPC(Remote Procedure Call)远程过程调用,这一词了,应该是在安卓逆向的时候听闻的,当时吹嘘的意思是这样的,通过另一个远端服务器来调用安卓代码中的函数,并将执行后的结果返回。比如有一个加密算法,如果要实现脱机(脱离当前环境)运行的话,就需要扣除相对应的代码,补齐对应的环境(模块,上下......

2021-10-09 05:11:35 1121

原创 使用JSONPath解析json数据

使用JSONPath解析json数据审核中之前学习爬虫的时候,如果是 HTML 的数据,通过 xpath 或是 css 选择器,就能很快的获取我们想要的数据,如果是 json 有没有类似 xpath 这种,能够直接根据条件定位数据,而不需要自行 json 解析在遍历获取。答案是有的,也就是 JSONPath。在线测试网址JSONPath 在线验证所选用的环境是 Node + JavaScript,用到 jsonpath 这个包jsonpath - npm (npmjs.com)参考链...

2021-09-20 15:19:54 2715

原创 使用Vue开发Chrome插件

原文链接:使用Vue开发Chrome插件 - 愧怍的小站 (kuizuo.cn)前言我当时学习开发Chrome插件的时候,还不会Vue,更别说Webpack了,所以使用的都是原生的html开发,效率就不提了,而这次就准备使用vue-cli来进行编写一个某B站获取视频信息,评论的功能(原本是打算做自动回复的),顺便巩固下chrome开发(快一年没碰脚本类相关技术了),顺便写套模板供自己后续编写Chrome插件做铺垫。关于Chrome插件开发的基本知识就不赘述了,之前写过一篇原生开发的Chrome.

2021-09-18 12:45:12 6607 5

原创 使用 require.context 实现模块自动导入

前言在写资源导航的时候,我在将资源分类为一个文件的时候,发现如果我每定义一个分类,那我就需要创建一个文件,然后又要通过import form导入,就很烦躁。突然想到貌似vue-element-admin中的路由好像也是这样的,而store貌似定义完就无需再次导入,于是就开始研究代码,果不其然,发现了require.context依赖管理 | webpack 中文文档 (docschina.org)实现require.context:是一个webpack提供的api,通过执行r.

2021-09-12 08:30:08 1263

原创 MongoDB按时间分组

需求需求是这样的,要统计每一周的各个商品的销售记录,使用 echarts 图表呈现,如下图说实话,一开始听到这个需求的时候,我是有点慌的,因为 MongoDB 的分组玩的比较少(Mysql 也差不多),又要按照对应的星期来进行分组,这在之前学习 MongoDB 的时候还没接触过,于是就准备写了这篇文章,来记录下我是如何进行分组的MongoDB 的一些时间操作符时间操作符(专业术语应该不是这个,后文暂且使用这个来描述),后面会用到的$dayOfYear: 返回该日期是这一年的第几天.

2021-08-31 03:20:34 5185

原创 小程序如何反编译

环境安装微信开发者工具下载地址:稳定版 Stable Build | 微信开放文档 (qq.com)只支持windows和macnodejs下载 | Node.js (nodejs.org)模拟器这里推荐用雷电模拟器,真机都,只要能登录微信即可解包工具xuedingmiaojun/wxappUnpacker: 小程序反编译(支持分包) (github.com)选择一个文件夹,通过如下命令安装git clone https://github.com/xuedin.

2021-08-30 04:19:56 16938 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除