大象笔记

知者行之始,行者知之成

有了 github copilot pro,在 VSCode 中记录笔记更高效了

我是一个不记录笔记,就无法正常工作的人 😓。 之前也尝试了各种记录的方案。例如: 手机便签 独立的 markdown git 项目,专门用来记录笔记 在博客网站上记录 使用 obsidian 等笔记软件 每个方式,都坚持过一段时间。但是,我发现自从有了 github copilot pro 之后,笔记记录在项目中是最方便的。 基于无限使用的 gpt 4.1 模型,github copilot 可以实时理解我的需求,并且辅助我编写文档和笔记。 甚至可以节省我去 Google 搜索的时间。 同时,我发现记录在项目中也有更多的优势: 编辑方便不用切换程序。写代码和写文档,都在 VSCode 中 ...

阅读全文...

VSCode VIM 插件的中文输入法自动切换

在 VSCode 中使用 VIM 插件写代码时,经常会因为当前在中文输入法下,导致各种奇怪的现象。 例如, 切换到 Normal 模式后,按字母键,会出现中文输入法的提示框。 Normal 模式下,想按下 i 键进入 Insert 模式,结果是在中文输入法下,即输入了奇怪的东西。 非常之不爽,我一度想放弃 VIM 插件,甚至干脆不用中文 🥲,但是,这不现实,因为好多界面需要中文描述。 解决思路 在 VIM 插件退出 Insert 模式时,自动切换回英文输入法。 VSCode VIIM 插件的官方文档里,恰好有相关的配置。参考: https://github.com/VSCodeVim/Vi ...

阅读全文...

Android App 原生 Kotlin 开发提示词模板

我发现 claude 3.7 AI 在生成 Android APP 项目代码时,完全不参考当前项目的开发语言。 例如,项目是 kotlin 的项目,AI 默认生成的代码居然是 Java ... 看来,必须在提示词上多下点功夫,避免绕弯路。 提示词模板 ## 技术栈 - 编程语言:Kotlin / Java - UI 框架:XML Layouts (Views) / Jetpack Compose - 核心库/组件: (列出关键依赖,例如:ViewModel, LiveData/StateFlow, Room, Retrofit, Hilt/Dagger, Navigation Compo ...

阅读全文...

Golang 后端防御 XSS 攻击:用 bluemonday 让富文本发帖更安全

这两天在用 golang 开发一个论坛的后端接口,遇到了一个 XSS 攻击的场景。 发帖时,前端传递过来的 Content 是 html,经测试发现,如果不对 html 内容进行清理,会导致 XSS 攻击。😰 即,帖子内容中包含了恶意的 js 代码,攻击者可以通过这个 js 代码来窃取用户的 cookie 或者执行其他恶意操作。 什么是 XSS 攻击? XSS(Cross-Site Scripting)攻击是一种常见的网络安全漏洞,攻击者通过在网页中注入恶意脚本代码,使得这些代码在其他用户的浏览器中执行,从而窃取用户信息、劫持会话等。 XSS 攻击通常发生在用户输入未经过滤或清理的情况下,攻击 ...

阅读全文...

日均达标计算器,金融巨鳄必备微信小程序

昨天接到大象计算器的热心用户 Avery 🐻 老板(金融巨鳄🐊)的反馈,希望增加一个日均达标计算的功能。因为他心爱的一个小程序“日均达标测算”再也无法打开了。估计是没有续费,或者备案,被强制下架了吧。 ⚡️ 需求概要 银行有吸收存款的业务考核指标。比如要求是年日均达标 50 万,我输入现在的余额和现在的年日均,然后我要 6.30 号那天达标 50 万,今天此时此刻还要进多少钱放着不动,放到 6.30 号能达标 50 万。 📱 实际界面效果 由于计算器类的功能界面都差不多,我快速实现了一个版本,功能界面如下: 🧮 四种体验方式 长按识别或者扫码下方微信小程序码 微信中搜索🔍大象计算器 ...

阅读全文...

七牛云存储使用 qshell 批量下载文件并打压缩包的方案

我使用☁️七牛云存储了一堆 pdf 文件,我想批量下载其中的一部分,打包成一个压缩包。 最好是不需要通过我的服务器中转,能在七牛云上直接完成。 qshell 还是 pfop mkzip 通过七牛云官方命令行工具 qshell 实现本地批量下载+自动压缩,全程无需服务器中转。类似在 linux 终端里使用 wget 或者 curl 命令一样 使用七牛云 mkzip 异步处理接口,直接在云端打包,生成压缩包后下载。但是官方的 mkzip 文档太简陋了,我没有找到怎么对文件改名的操作。而且,如果一个文件变更,整个压缩包都需要重新打包。这样成本太高。所以,我还是选择 qshell 来下载文件。 纠 ...

阅读全文...

gpt 4o 与 gpt 4.1 的区别?为何 4.1 在 GitHub copilot pro 中是免费的基础模型

由于 GitHub copilot pro 账号六月份开始也对高级模型调用次数进行了限制,每个月限制使用 300 次。所以这个月,我把 chat 窗口中的默认模型从 claude 3.7 换成了没有次数限制的 gpt 4.1。参考这张模型与消费次数的对应关系。调用一次 gpt 4.5 会消耗 50 次配额,这个太吓人了吧😱 参考官方文档: https://docs.github.com/en/copilot/managing-copilot/monitoring-usage-and-entitlements/about-premium-requests ❓ 什么是 premium reque ...

阅读全文...

Magento 添加全局 CSS 样式

进入 Magento 后台 Content - Configuration 。 选择 Global 或者某个指定 Store。 HTML Head 中的 Scripts and Style Sheets 添加配置: <style> .action.primary { background: #e74c3c !important; } </style> 保存后刷新缓存 ...

阅读全文...

Magento 子店铺域名修改

需求 把所有 a.sunzhongwei.com 改为 b.sunzhongwei.com code 保存在哪里 nginx: c.sunzhongwei.com.conf 修改策略 原 a 的 config 文件备份一份,新建一个 b 的配置文件。 把所有 a.sunzhongwei.com 改为 b.sunzhongwei.com,然后 https 的配置去掉。 改成 80 端口监听 通过 certbot 申请新的证书 重启 nginx 服务 magento 后台修改域名 登录 Magento 后台 进入 Stores > Configuration > General ...

阅读全文...

午夜惊魂,在家发版本,线上 golang 找不到 GLIBC 版本导致服务挂掉

昨晚接到紧急需求,需要增加一个搜索功能。当时在家里,感觉很简单的需求, 随便改改,直接发布到线上服务器就行,毕竟我大 golang 只要能编译通过,基本不会有大问题 😏。 但是,不出意外,出了意外。自动发布脚本,在重启 systemd 服务后, 使用 systemctl status 查看状态,发现 golang 服务没有启动成功。 通过命令行单独启动 go 服务,发现报错: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found 还好,我发布前,将可执行程序备份了一份。。。挂了一分钟,我就悄悄恢复了,险些提桶跑路。 ...

阅读全文...

阿里云群发短信通知的失败问题排查

在开发的大赛报名系统,截至尾声,组织方希望群发一条短信通知所有参赛队的队长, 赶紧提交作品,不要挤在最后一天,防止人多导致系统卡顿。毕竟大量的文件及视频上传。 但是,众所周知的原因,现在发送验证码短信的成功率都达不到 98%,特别是贵州移动的手机号。 怎么都收不到短信验证码。 我担心群发短信,会不会也有类似的问题? 更难的地方是,组织方给出的短信模板是 180 多个字符,相当于要发送 3 条短信才能发送完整。 我担心的是: 成本太高。预留的额度不够 文字越多,触发敏感词被拦截的概率越高。 于是,用我仅有的两个报备成功的签名进行群发测试,结果如下: 签名一【XXX】,这个短信签名(目前用于 ...

阅读全文...

Magento .phtml 代码中获取当前域名,并条件输出菜单

不知道为啥,使用 Magento 的 Mage::app() 获取 store 信息会导致网站崩溃。。。 所以,直接使用纯 PHP 的方式获取当前域名。 纯 PHP 的实现 <?php //$storeName = Mage::app()->getStore()->getName(); // 这行会导致网站崩溃,所以换个 PHP 的方式获取域名 $domain = $_SERVER['HTTP_HOST']; ?> <span><?php echo $domain; ?></span> 条件输出菜单 <?php if ...

阅读全文...