知者行之始,行者知之成
2023-12-28 · 阅读 419 · 字数 116
No 'Access-Control-Allow-Origin' header 想从 js 前端实现拉取一个服务端的 markdown 文件,然后在浏览器端渲染成 HTML。 但是本地开发环境调试时报错: Access to XMLHttpRequest at 'https://www.sunzhongwei.com/some_file.md' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on th ...
2023-12-25 · 阅读 507 · 字数 731
又到了一年一度的年底写工作总结的 PPT 时间。 这个周末烟台刚下完创历史记录的暴雪,天太冷就没有出门,把 PPT 赶了出来。 PPT 内容来源 每个月的月报 涉及项目的屏幕截图。统计了一下今年6成的工作都是在写 Android,所以界面截图成了大头。为了更加直观,我把截屏视频转换成了 gif 自动循环播放,同时省去了贴图量。 整理这个笔记的目的 找一个合适的切入点,让我自己不反感这个总结。 公司比较尴尬的一点是,这个 PPT 还要在部门内部上台讲一遍。 然后相互打分,作为年度考核的一个依据。 如果是为了打高分,那么这个 PPT 自然就会出现各种言不由衷的内容。 而且也不一定有好的效果。 ...
2023-12-20 · 阅读 723 · 字数 530
之前为了练手把所有的 Axum rust 代码都写在 main.rs 这一个主文件中。 随着功能的增多,发现几点不便: 代码行数过多,不方便查找指定功能的代码 不同功能的类似数据结构需要分别定义,为了避免重名,增加了功能名前缀,但是带来的影响是类型名过长,代码丑陋无比 新增功能时,复制/修改既有代码也不方便 目标 一个 Axum 项目中,有多个子功能,每个子功能在不同的文件中实现。 契机 正好在写枯燥无比的 Android 界面代码时,产生了一个小工具的需求, 即,将 Android 样式代码剥离出 styles.xml 文件,于是在写这个功能的时候, 就顺手将既有的 Axum 项目代码重 ...
2023-12-16 · 阅读 414 · 字数 294
Google Colab 地址 使用 Colab 能利用 Google 免费提供的 GPU 资源,快速进行模型训练。比在我的弱鸡笔记本上训练,能节省大量时间。 在 Colab 上新建一个项目 https://colab.research.google.com 或者可以考虑继续沿用之前的项目。 安装 yolov5 新建一个代码块 #clone YOLOv5 and !git clone https://github.com/ultralytics/yolov5 # clone repo %cd yolov5 %pip install -qr requirements.txt # install ...
2023-12-02 · 阅读 1271 · 字数 589
这个周末不算忙,总算可以把一直没有上线的 Rust Axum 写的在线小工具发布了。 基本上跟 Golang Gin 的发布流程类似,本地编译好,scp 到服务器上。 然后配置好 systemd, nginx reload 就可以了。 比较省事的地方是 axum 默认会把模板文件打包到二进制文件中,不需要像 golang gin 一样增加额外配置代码。 第一个 Rust 小工具 Rust Axum 小工具: 中文标点替换成对应的英文标点符号 网页地址: https://www.sunzhongwei.com/tools3/replace-chinese-punctuation 编译优化 如果不 ...
2023-11-24 · 阅读 739 · 字数 520
早上收到一条微信公众平台的消息提醒: 大致内容是,现有的个人微信小程序需要完成微信认证,否则,12月24日之后将不能被搜索到,无法转发分享。。。 这还得了,只能屁颠屁颠地去小程序管理后台去完成认证了。 按照提示,到左侧导航栏找到微信认证功能,即可。 费用 个人微信小程序认证费用 30,企业小程序 300。 认证费用转嫁开发者,也是没有底线了现在。 第一个被驳回 原因是,如果你选择了个人职业,例如我选了软件开发工程师,还需要上传身份证。但是第一次填写,也没提示。审核人员就打电话过来了。说不提供身份证,就需要将职业置空,即无。 第一次见到发布程序,还需要认证我职业的。。。有任何关联性么? 我干 ...
2023-11-18 · 阅读 561 · 字数 383
最近写代码时,发现好多的单词拼写错误,既有自己拼写错误的,也有三方 API 中的字段拼写错误,更有产品文档中的,及 UI 设计稿中的。 有些一眼就能辨识出来,有些很难察觉,特别是比较长的单词。 例如: registration 拼写成了 registartion。 浏览器比较好,非常智能,比如正在使用的 Edge,就自动标注了第二个单词有拼写错误。 但是在 VIM 中,就很难发现,一旦上线,就是非常尴尬的 bug。 于是查了一下,发现 VIM 居然自带了单词拼写检查功能。 开启 :set spell 关闭 set nospell 效果 VIM 会在拼写错误的单词下面加上下划线。 但是,没 ...
2023-11-17 · 阅读 887 · 字数 421
最近双十一,又收到好几个域名的续费通知,有的废弃很久了,一直舍不得扔掉。 毕竟好不容易做了备案,也通过了 Google Adsense 广告认证,丢了确实可惜。 但是,自己精力有限,不想花费过多的时间在不再感兴趣的项目上。心想干脆直接卖掉吧。 阿里云域名管理很方便的一点是,不想续费了,可以直接挂在上面交易,设置好一个目标价格后,可以等待买家一口价成交,省时省力,不墨迹。 没想到,挂了两天就被买走了。 这个域名是 14 年注册的,三个字拼音的域名,不太好。但是有备案,也接入了各种广告联盟,有一点点流量,可以忽略不计。挂了个 wordpress 站,及一个练手的小 Spring Boot 项目。 ...
2023-11-11 · 阅读 1639 · 字数 1273
askama 是什么 Askama implements a template rendering engine based on Jinja. It generates Rust code from your templates at compile time based on a user-defined struct to hold the template's context. askama 即一套模板系统,可以集成到 rust 项目中,并不局限于 axum 中,也不局限于 HTML,任何的模板使用场景都是可以的。 类似 golang 内置的模板系统,及 php laravel 中 ...
2023-11-09 · 阅读 1700 · 字数 962
要实现一个小的在线网页工具,最基本的功能就是能够返回一个 HTML form 表单, 让用户能填写数据,然后提交到 rust axum 后台,再将处理后的数据展示出来。 相对 PHP,Python,Go 的 web 框架,Rust 的 web 框架就晦涩很多,下面的示例如果换成其他语言, 在没有任何基础的情况下,估计一小时也能搞定,但是使用 rust axum 这个框架,我还是折腾了一晚上。 主要原因是: axum 的文档太简陋。如果不是 ChatGPT 帮助,我估计给我一天也搞不定。Google 也搜不到太多的资料。 rust 语法晦涩,需要具备大量的基础知识 下面示例实现了一些基本的使 ...
2023-11-09 · 阅读 654 · 字数 189
即一个 Android Button 在正常显示时,跟按下时,显示不同的背景图片。 通常按下时显示的是另一张高亮的图片。 之前是通过点击事件实现的,无意发现 drawable selector 可以方便的配置实现,这样代码也清晰了很多。 drawable selector 右键点击 res/drawable 目录,选择新建一个 Drawable Resource File,Root Element 是 selector。 命名为 button_bg.xml <?xml version="1.0" encoding="utf-8"?> < ...
2023-11-14 · 阅读 551 · 字数 789
之前写 Android 平板 App,由于没有正经写过 Android 界面布局,为了图省事, 直接用 px 像素做的布局,及字号大小设置。 好在平板是我们指定的型号,屏幕尺寸,及像素。但是自从发货到客户手中之后, 我就非常担心,一旦这款平板停产,换个更高分辨率的平板怎么办? 为了消除焦虑,我了解了一下 Android 布局的基础。 总结起来一句话: 字号用 sp,宽高用 dp。 问题简化 图片宽度用什么单位? dp 字号用什么单位?sp dp 是什么? dp 是怎么换算为 px 的? dp 是怎么换算为 px 的 android 中,dp 在渲染前,都会被转换成 px。 px = den ...
生活 | 跑步 清单 足球 鲁班 探索 孤独的美食家 驾驶 电视剧 收纳 奶爸 健康 game 电影 周末 |
---|---|
Geek | 健身 Laravel Git Vim MySQL Linux UI Windows SVN 纪录片 管理 Shell 游记 工具 手机 BackboneJS 自建博客 Mac DNS Tornado CDN Django Python AngularJS 理财 前端 Nginx 爬虫 Redis Javascript Browser 浏览器 推广 OAuth CSS PHP Social Networks 安全 运维 创业 杂记 VueJS Android Image IDE Java ReactJS 数据分析 SQLite RESTful 读书笔记 家电 ecshop Vagrant wordpress docker SEO GTD magento mongodb nodejs weex 冷知识 ruby iOS 微信小程序 AI CMS 快应用 backpack 广告联盟 OA 短信 UWP Win CSharp Tampermonkey graphviz 钉钉 WPS 数据字典 微信公众号 Fuchsia Adobe XD SQL Server thinkphp 代码规范 商业模式 Flutter 头痛的问题 serverless 视频制作 国际化 golang 服务器 Kotlin 网站建设 5G 笔记本 图片 spark spring 物联网 InfluxDB 图像识别 postgre rust |
成长的烦恼 | 闲言碎语 待产 不睡觉 写作 程序员 孙心然语录 原则 大鸿语录 |
地球 | 植物 时间 中文 赚钱 国家地理 烟台 一生伏首拜阳明 emoji 弟子规 英文 国际贸易 |