牛马论坛查看原帖 →

MoveCar - 挪车通知系统

七夏 377 阅读 0 回复
基于 Cloudflare Workers 的智能挪车通知系统,扫码即可通知车主,保护双方隐私。
请求者页面:
[attach]14[/attach]
车主页面:
[attach]15[/attach]
[b]为什么需要它?[/b]
[list]
[*]🚗 [b]被堵车却找不到车主[/b] - 干着急没办法
[*]📱 [b]传统挪车码暴露电话[/b] - 隐私泄露、骚扰电话不断
[*]😈 [b]恶意扫码骚扰[/b] - 有人故意反复扫码打扰
[*]🤔 [b]路人好奇扫码[/b] - 并不需要挪车却触发通知
[/list][b]这个系统如何解决?[/b]
[list]
[*]✅ [b]不暴露电话号码[/b] - 通过推送通知联系,保护隐私
[*]✅ [b]双向位置共享[/b] - 车主可确认请求者确实在车旁
[*]✅ [b]无位置延迟 30 秒[/b] - 降低恶意骚扰的动力
[*]✅ [b]免费部署[/b] - Cloudflare Workers 免费额度完全够用
[*]✅ [b]无需服务器[/b] - Serverless 架构,零运维成本
[/list][b]为什么使用 Bark 推送?[/b]
[list]
[*]🔔 支持「紧急 / 重要 / 警告」通知级别
[*]🎵 可自定义通知音效
[*]🌙 [b]即使开启勿扰模式也能收到提醒[/b]
[*]📱 安卓用户:原理相通,将 Bark 替换为安卓推送服务即可(如 Pushplus、Server酱)
[/list][b]使用流程[/b]
[b]请求者(需要挪车的人)[/b]
[list=1]
[*]扫描车上的二维码,进入通知页面
[*]填写留言(可选),如「挡住出口了」
[*]允许获取位置(不允许则延迟 30 秒发送)
[*]点击「通知车主」
[*]等待车主确认,可查看车主位置
[/list][b]车主[/b]
[list=1]
[*]收到 Bark 推送通知
[*]点击通知进入确认页面
[*]查看请求者位置(判断是否真的在车旁)
[*]点击确认,分享自己位置给对方
[/list][b]部署教程[/b]
[b]第一步:注册 Cloudflare 账号[/b]
[list=1]
[*]打开 [url=https://dash.cloudflare.com/sign-up]https://dash.cloudflare.com/sign-up[/url]
[*]输入邮箱和密码,完成注册
[/list][b]第二步:创建 Worker[/b]
[list=1]
[*]登录后点击左侧菜单「Workers & Pages」
[*]点击「Create」→「Create Worker」
[*]名称填 [codeblock]movecar[/codeblock](或你喜欢的名字)
[*]点击「Deploy」
[*]点击「Edit code」,删除默认代码
[*]复制 [codeblock]movecar.js[/codeblock] 全部内容粘贴进去
[*]点击右上角「Deploy」保存
[/list][b]第三步:创建 KV 存储[/b]
[list=1]
[*]左侧菜单点击「KV」
[*]点击「Create a namespace」
[*]名称填 [codeblock]MOVE_CAR_STATUS[/codeblock],点击「Add」
[*]回到你的 Worker →「Settings」→「Bindings」
[*]点击「Add」→「KV Namespace」
[*]Variable name 填 [codeblock]MOVE_CAR_STATUS[/codeblock]
[*]选择刚创建的 namespace,点击「Deploy」
[/list][b]第四步:配置环境变量[/b]
[list=1]
[*]Worker →「Settings」→「Variables and Secrets」
[*]添加以下变量:
[list]
[*][codeblock]BARK_URL[/codeblock]:你的 Bark 推送地址(如 [codeblock]https://api.day.app/xxxxx[/codeblock])
[*][codeblock]PHONE_NUMBER[/codeblock]:备用联系电话(可选)
[/list][/list][b]第五步:绑定域名(可选)[/b]
[list=1]
[*]Worker →「Settings」→「Domains & Routes」
[*]点击「Add」→「Custom Domain」
[*]输入你的域名,按提示完成 DNS 配置
[/list][b]制作挪车码[/b]
[b]生成二维码[/b]
[list=1]
[*]复制你的 Worker 地址(如 [codeblock]https://movecar.你的账号.workers.dev[/codeblock])
[*]使用任意二维码生成工具(如 草料二维码、QR Code Generator)
[*]将链接转换为二维码并下载
[/list][b]美化挪车牌[/b]
[align=left]使用 AI 工具生成精美的装饰设计:[/align][list]
[*][b]Nanobanana Pro[/b] - 生成装饰图案和背景
[*][b]ChatGPT[/b] - 生成创意设计图
[/list][align=left]制作步骤:[/align][list=1]
[*]用 AI 工具生成你喜欢的装饰图案
[*]将二维码与生成的图案组合排版
[*]添加「扫码通知车主」提示文字
[*]打印、过塑,贴在车上
[/list][indent][align=left]💡 用 AI 生成独一无二的挪车牌,让你的爱车更有个性![/align][/indent][b]效果展示[/b]
[attach]16[/attach]
[b]安全设置(推荐)[/b]
[align=left]为防止境外恶意攻击,建议只允许中国地区访问:[/align][b]方法一:使用 WAF 规则(推荐)[/b]
[list=1]
[*]进入 Cloudflare Dashboard → 你的域名
[*]左侧菜单点击「Security」→「WAF」
[*]点击「Create rule」
[*]规则设置:
[list]
[*]Rule name:[codeblock]Block non-CN traffic[/codeblock]
[*]If incoming requests match:[codeblock]Country does not equal China[/codeblock]
[*]Then:[codeblock]Block[/codeblock]
[/list][*]点击「Deploy」
[/list][b]方法二:在 Worker 代码中过滤[/b]
在 [codeblock]movecar.js[/codeblock] 的 [codeblock]handleRequest[/codeblock] 函数开头添加:
[code]async function handleRequest(request) {
const country = request.cf?.country;
if (country && country !== 'CN') {
return new Response('Access Denied', { status: 403 });
}

// 下面保持原有逻辑
}[/code]⚠️ 曾经被境外流量攻击过,强烈建议开启地区限制!
[attach]17[/attach]

阅读全文与全部回复 →