独立开发30天,我用AI做了个发型推荐小程序(含全部踩坑记录)
每次去理发店Tony 老师问想剪什么样的我都答不上来。不是没想法是不知道自己适合什么发型。圆脸、方脸、长脸……网上说了一万种但对着镜子看了半天还是分不清自己属于哪种。于是我想能不能做一个 AI 小程序拍张照就能告诉你适合什么发型小程序实际效果截图技术选型需求很简单用户拍张照 → 识别脸型根据脸型推荐发型 → 显示结果最好还能试戴效果图前端微信小程序生态封闭没得选后端Node.js Express人脸识别百度人脸检测 API免费 1000 次/月人脸融合百度人脸融合免费 500 次/月服务器阿里云 2 核 2G 乞丐版做独立开发的原则能不自己造的轮子就别造专业 API 比你写半天的代码靠谱得多。第一个坑脸型判断全靠猜最初想用 Canvas 做面部关键点检测。写了三天精度感人——我给猫拍了一张照片它被归类为「鹅蛋脸」。对你没看错。一只猫鹅蛋脸。猫我明明是圆脸后来换了百度人脸检测 API正经返回 72 个关键点坐标通过长宽比判断脸型准确率上了天。猫的照片也被正确判为「未检测到人脸」。{face_shape:oval,face_shape_name:鹅蛋脸,confidence:0.92,gender:male}教训别自己造轮子。专业的事交给专业 API。第二个坑微信审核地狱小程序做完提交审核——被拒。“请接入微信内容安全 API。”微信要求接入imgSecCheck图片检测和msgSecCheck文本检测两个 API。代码不到 100 行踩坑一整天。最坑的地方要录屏录 API 调用成功返回errcode: 0的屏当证据提交。第三个坑Nginx 配置的魔鬼细节小程序后端和另一个服务跑在同一台服务器上。有次打开审核页面显示的是另一个网站首页——nginx 配置坏了。sed命令的a\追加模式插入多行配置时会在行首插入一个多余的n导致 nginx 直接报unknown directive n。反复修了四次才利索。教训直接完整文件替换别用 sed 修 nginx。第四个坑iOS 相机打不开Android 一切正常iPhone 上拍照就黑屏。根因wx.authorize({ scope: scope.camera })在 iOS 上不会弹权限提示。iOS 相机权限走的是系统原生弹窗。解决方案改用wx.getSetting检测让camera组件自己触发 iOS 权限binderror兜底另外box-shadow: 0 0 0 9999px #000000这种用大阴影做遮罩的黑科技iOS 上闪白崩溃。老老实实改background: rgba(0,0,0,0.45)。技术架构用户 → 微信小程序 → HTTPS → Nginx (443) ↓ ┌── 发型助手 API (3001) │ ├── /api/detect-face → 百度人脸检测 │ ├── /api/try-on → 人脸融合 │ └── 微信内容安全检测 │ └── AI 论坛 (3000)费用服务费用阿里云服务器 (2C2G)约 100 元/月百度人脸检测免费 1000 次/月百度人脸融合免费 500 次/月域名几十块/年总计一杯奶茶/天的成本百度人脸 API 返回的脸型识别结果总结30 天从灵光一闪到上线一个小程序。踩了无数坑被 nginx 气笑过被微信审核搞到头秃过。但看到第一个用户成功分析出脸型、推荐出发型——值了。如果你也在做类似的独立开发项目欢迎评论区交流经验遇到了什么坑说出来大家一起避。原创不易点个收藏支持一下~