一键免费部署挪车二维码,Cloudflare Workers搭建挪车页面

用Cloudflare Workers部署挪车页面

前期准备

  • 已经托管到Cloudflare的域名一个
  • 挪车源代码
  • WXPusher的AppTokenUIDs

部署流程

WxPuhser

  1. 访问WxPusher官网,微信扫码登录
  2. 单击「应用管理」,「应用信息」,应用名字填写movecar,联系方式填写手机号,推送内容随便写,这里填写挪车
image.png
  1. 单击左侧「appToken」,未创建应用可能显示创建appToken等字样,创建后这里仅显示重置appToken,创建后记录下AppToken
  2. 单击左侧「用户管理」、「用户列表」,记录下个人UIDimage.png

准备好token和UID下一阶段用Cloudflare搭建部署起来

Cloudflare Workers

  1. 访问Cloudlare并登录。
  2. 单击「Workers 和 Pages」,「创建」
image.png

3.单击「创建Worker」

image.png

4.为Worker命名,我这里填写movecar,单击页面下方「部署」

image.png

5.单击「编辑代码」
image.png

6.将提前准备好的挪车页面代码粘贴进去,替换好WXPusher相关的值,单击右上地址栏右面的「预览」

image.png

附上挪车代码:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  const phone = '18888888888' // 车主的手机号
  const wxpusherAppToken = 'AT_vAxWMmK123UyvrBZszr123fWeGqW1e17' // Wxpusher APP Token
  const wxpusherUIDs = ['UID_x5dZ9X3P123VOE3ttPvfX12341xU'] // 车主的UIDs  , 'UID_d0pycYubbK6d766GNDo5deknw4i4'  

  const htmlContent = `
    <!DOCTYPE html>
    <html lang="zh-CN">
      <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>通知车主挪车</title>
        <style>
          * { box-sizing: border-box; margin: 0; padding: 0; }
          body { font-family: Arial, sans-serif; display: flex; align-items: center; justify-content: center; height: 100vh; background: #f0f2f5; color: #333; }
          .container { text-align: center; padding: 20px; width: 100%; max-width: 400px; border-radius: 8px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); background: #fff; }
          h1 { font-size: 24px; margin-bottom: 20px; color: #007bff; }
          p { margin-bottom: 20px; font-size: 16px; color: #555; }
          button { 
            width: 100%; 
            padding: 15px; 
            margin: 10px 0; 
            font-size: 18px; 
            font-weight: bold; 
            color: #fff; 
            border: none; 
            border-radius: 6px; 
            cursor: pointer; 
            transition: background 0.3s; 
          }
          .notify-btn { background: #28a745; }
          .notify-btn:hover { background: #218838; }
          .call-btn { background: #17a2b8; }
          .call-btn:hover { background: #138496; }
        </style>
      </head>
      <body>
        <div class="container">
          <h1>通知车主挪车</h1>
          <p>如需通知车主,请点击以下按钮</p>
          <button class="notify-btn" onclick="notifyOwner()">通知车主挪车</button>
          <button class="call-btn" onclick="callOwner()">拨打车主电话</button>
        </div>

        <script>
          // 调用 Wxpusher API 来发送挪车通知
          function notifyOwner() {
            fetch("https://wxpusher.zjiecode.com/api/send/message", {
              method: "POST",
              headers: { "Content-Type": "application/json" },
              body: JSON.stringify({
                appToken: "${wxpusherAppToken}",
                content: "您好,有人需要您挪车,请及时处理。",
                contentType: 1,
                uids: ${JSON.stringify(wxpusherUIDs)}
              })
            })
            .then(response => response.json())
            .then(data => {
              if (data.code === 1000) {
                alert("通知已发送!");
              } else {
                alert("通知发送失败,请稍后重试。");
              }
            })
            .catch(error => {
              console.error("Error sending notification:", error);
              alert("通知发送出错,请检查网络连接。");
            });
          }

          // 拨打车主电话
          function callOwner() {
            window.location.href = "tel:${phone}";
          }
        </script>
      </body>
    </html>
  `

  return new Response(htmlContent, {
    headers: { 'Content-Type': 'text/html;charset=UTF-8' },
  })
}

7.单击「通知车主挪车」,测试是否正常推送消息。

image.png
image.png
  1. 单击右上「部署」,等待部署完成
  2. 回到Cloudflare主页,单击托管的「域名」
image.png

10.单击左侧「DNS」

image.png

11.单击「添加记录」,类型选择A,名称随意(该名称为二级域名),IPV4随意填写,这里名称我填写movecar,IPV4填写2.2.2.2,填写完成单击「保存」

image.png

12.单击左侧「Workers 路由」,「添加路由」,路由填写刚才设置的二级域名,Worker选择刚才创建的Worker,这里我的路由填写movecar.**.com,Worker选择movecar,单击「保存」

image.png

13.保存成功后,尝试访问设定好的域名,单击「通知车主挪车」,测试是否正常发送

image.png

以上就是利用Cloudflare Workers部署挪车页面的过程了,码字不易,请多多支持!

选做

  • 加密JS代码防止别人获取你的推送Token等信息

访问在线JavaScript混淆加密,将部署好的代码粘贴进来,单击「混淆」,将混淆后的代码粘贴回Cloudflare Workers代码编辑页面,单击「部署」即可

image.png
image.png

二维码转换

  1. 访问草料二维码
  2. 输入上面建好的页面网址,单击「生成」,注意:一定要加上https,否则微信有可能会拦截。
image.png

还可以根据自己的喜好进行美化,例如我使用微信配色,让人一眼就知道要用微信扫码挪车。

写在结尾

对于该挪车程序,有一些个人思考:

  1. 避免访问者无限制地发送,应该在发送次数/时间上做一个限制【CloudFront里面就可以设置访问】。
  2. 添加邮件、钉钉、Server酱等常见推送方式,以满足多样化推送需求。
  3. 使用Cloudflare Workers必须添加自定义域名,否则国内大概率访问失败。
image.png
版权声明 1 本网站名称:OK源码网
2 本站永久网址:https://www.okymw.com
3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长 QQ1203126134进行删除处理。
4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
© 版权声明
THE END
喜欢就支持一下吧
点赞69 分享
OK源码网的头像-OK源码网超级会员
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容