廿八的记录与分享
廿八是个偷懒的搬运工
开小招

MoveCar - 智能挪车通知系统-优化记录与部署教程

先上部分截图:

MoveCar - 智能挪车通知系统-优化记录与部署教程插图
MoveCar - 智能挪车通知系统-优化记录与部署教程插图1

原项目地址:lesnolie/movecar: 🚗 智能挪车通知系统 – 基于 Cloudflare Workers,支持实时位置共享和多推送服务

我修改后的地址:nbbk/movecar: 🚗 智能挪车通知系统 – 基于 Cloudflare Workers,支持实时位置共享和多推送服务

我修改了什么?

1. 新增 PushPlus (推送加) 支持

  • 功能:原系统仅支持 Bark(iOS),修改后新增了 PushPlus 接口。
  • 逻辑:系统会同时检测环境变量中的 BARK_URLPUSHPLUS_TOKEN。如果两者都配置,则会双渠道同时推送通知。
  • 优化:针对 PushPlus 的消息模板,将换行符 \n 自动转换为 HTML 的 <br>,并增加了点击直达的超链接,提升了车主在微信端的操作体验。

2. 修复前端兼容性警告

  • 警告内容apple-mobile-web-app-capable is deprecated
  • 修改:在 HTML 模板中新增了标准的 <meta name="mobile-web-app-capable" content="yes"> 标签,确保在现代移动端浏览器(iOS & Android)中的 PWA 兼容性和沉浸式全屏体验。

3. 适配反代域名(自定义域名)

  • 痛点:由于 Cloudflare Worker 默认使用 url.origin 获取请求地址,在使用备案域名反代时,生成的推送链接会指向 CF 的原始域名,导致车主无法正常打开链接。
  • 解决方案:引入了 EXTERNAL_URL 环境变量。代码会优先使用该变量定义的域名来构建 owner-confirm 链接,从而完美适配反代场景。

为什么手动指定“对外访问域名”

  1. 解决反代域名偏差:强制让推送系统知道“真正的访问入口”是哪一个。
  2. 无需硬编码:万一以后你又换了域名,只需要在后台修改环境变量,不需要改动代码。
  3. 兼容性:如果你没配置这个变量,它依然会按原来的逻辑运行,不会报错。
// --- 修改前 ---
// const confirmUrl = url.origin + '/owner-confirm';

// --- 修改后:优先读取环境变量中的域名,如果没有配置则回退到原始域名 ---
const baseDomain = (typeof EXTERNAL_URL !== 'undefined' && EXTERNAL_URL) 
                   ? EXTERNAL_URL.replace(/\/$/, "") // 去掉末尾斜杠
                   : url.origin;

const confirmUrl = baseDomain + '/owner-confirm';

二、 部署步骤

第一步:注册 Cloudflare 账号

  1. 打开 https://dash.cloudflare.com/sign-up
  2. 输入邮箱和密码,完成注册

第二步:创建 Worker

  1. 登录后点击左侧菜单「Workers & Pages」
  2. 点击「Create」→「Create Worker」
  3. 名称填 movecar(或你喜欢的名字)
  4. 点击「Deploy」
  5. 点击「Edit code」,删除默认代码
  6. 复制 movecar.js 全部内容粘贴进去
  7. 点击右上角「Deploy」保存

第三步:创建 KV 存储

  1. 左侧菜单点击「KV」
  2. 点击「Create a namespace」
  3. 名称填 MOVE_CAR_STATUS,点击「Add」
  4. 回到你的 Worker →「Settings」→「Bindings」
  5. 点击「Add」→「KV Namespace」
  6. Variable name 填 MOVE_CAR_STATUS
  7. 选择刚创建的 namespace,点击「Deploy」

第四步:配置环境变量

  1. Worker →「Settings」→「Variables and Secrets」
  2. 添加以下变量(任选其一或全部添加):
    • BARK_URL:Bark 推送地址(iOS推荐,如 https://api.day.app/xxxxx
    • PUSHPLUS_TOKEN:PushPlus 令牌(微信推送推荐,去 pushplus.plus 获取)
    • EXTERNAL_URL:填入你的反代备案域名(例如 https://xx.xxx.com)-(可选,注意:带上https,末尾不要带斜杠)
    • PHONE_NUMBER:车主备用联系电话(用于备用拨号)(可选)

第五步:绑定域名(可选)

  1. Worker →「Settings」→「Domains & Routes」
  2. 点击「Add」→「Custom Domain」
  3. 输入你的域名,按提示完成 DNS 配置

制作挪车码

生成二维码

  1. 复制你绑定的自定义域名或者你的反代备案域名(微信扫码访问可以无提示直接进去)或者你的 Worker 地址(如 https://movecar.你的账号.workers.dev
  2. 使用任意二维码生成工具(如 草料二维码、QR Code Generator)
  3. 将链接转换为二维码并下载

美化挪车牌

使用 AI 工具生成精美的装饰设计:

  • Nanobanana Pro – 生成装饰图案和背景
  • ChatGPT – 生成创意设计图

制作步骤:

  1. 用 AI 工具生成你喜欢的装饰图案
  2. 将二维码与生成的图案组合排版
  3. 添加「扫码通知车主」提示文字
  4. 打印、过塑,贴在车上

💡 用 AI 生成独一无二的挪车牌,让你的爱车更有个性!

赞赏

开小招

MoveCar - 智能挪车通知系统-优化记录与部署教程
先上部分截图: 原项目地址:lesnolie/movecar: 🚗 智能挪车通知系统 - 基于 Cloudflare Workers,支持实时位置共享和多推送服务 我修改后的地址:nbbk/movecar: 🚗 智能挪车…
扫描二维码继续阅读
2026-01-02
近期文章