怎么托管github微信推送

worktile 其他 72

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    托管Github微信推送的方法主要分为两步:首先是配置Github Webhooks,然后是设置微信推送。下面我来详细介绍一下具体的步骤。

    1. 配置Github Webhooks:
    * 在你要托管的Github项目中,点击”Settings”选项卡;
    * 在左侧菜单中点击”Webhooks”;
    * 点击”Add webhook”按钮;
    * 在”Payload URL”中填入接收推送的URL地址。你可以使用一些第三方服务(例如Server酱、PushBear等)提供的接口,或者自己搭建一个接口;
    * 在”Content type”中选择”application/json”;
    * 在”Which events would you like to trigger this webhook?”中选择触发推送的事件类型,例如push、pull request等;
    * 点击”Add webhook”按钮保存配置。

    2. 设置微信推送:
    * 如果你选择使用第三方服务的接口进行微信推送,那么你需要在该服务的官网上注册账号,并获取到用于推送的相关信息,例如access token、API key等;
    * 登录微信推送服务的官网,然后进行相应的设置,例如填写接收推送的微信号信息、配置消息模板等;
    * 在接口调用的时候,你需要将获取到的相关信息传递给接口,以便进行推送。

    需要注意的是,具体的配置步骤可能会因为不同的服务而有所不同,上面的步骤仅供参考。另外,为了保证接收到推送的安全性,你可能还需要配置一些安全选项,例如密钥验证等。

    总的来说,配置Github Webhooks和设置微信推送是实现托管Github微信推送的关键步骤。通过这两步的操作,你就可以在Github上的项目有新的动态时,自动地接收到相应的微信推送信息了。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    托管 GitHub 微信推送是将 GitHub 仓库的更新信息推送到微信中,以便及时获得更新的通知。以下是实现此功能的步骤:

    1. 创建微信公众号
    首先,在微信公众平台上创建一个微信公众号。如果已经有一个公众号,可以跳过此步骤。

    2. 获取微信推送模板
    在微信公众平台上,获取一个微信推送模板。可以选择一个合适的模板,或者自定义一个模板。

    3. 创建 GitHub 仓库
    在 GitHub 上创建一个新的仓库,用于存放需要推送到微信的文件。可以是一个单独的文本文件,或者是一个包含更新信息的 Markdown 文件。

    4. 创建 GitHub Actions Workflow
    GitHub Actions 是一个自动化工作流程,可以在 GitHub 仓库中自动执行任务。创建一个新的 Workflow 文件,用于触发推送操作。示例如下:

    “`
    name: Push to WeChat

    on:
    push:
    branches:
    – main

    jobs:
    push:
    runs-on: ubuntu-latest

    steps:
    – name: Checkout code
    uses: actions/checkout@v2

    – name: Push to WeChat
    env:
    WECHAT_ACCESS_TOKEN: ${{ secrets.WECHAT_ACCESS_TOKEN }}
    run: |
    curl -X POST -H “Content-Type:application/json” -d ‘{“template_id”:”YOUR_TEMPLATE_ID”,”url”:”https://github.com/USERNAME/REPO”,”data”:{“message”:{“value”:”{{ github.event.head_commit.message }}”,”color”:”#173177″}}}’ “https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=$WECHAT_ACCESS_TOKEN”
    “`

    其中,`WECHAT_ACCESS_TOKEN` 是通过微信公众平台获取的访问令牌。`YOUR_TEMPLATE_ID` 是在微信公众平台上获取的模板 ID。

    5. 配置 GitHub Secrets
    在 GitHub 仓库的 Settings 页面中,创建一个名为 `WECHAT_ACCESS_TOKEN` 的 Secret,将获取到的访问令牌添加到这个 Secret 中。

    完成上述步骤后,每次代码提交到 GitHub 仓库的 `main` 分支时,Workflow 会被触发,将更新信息推送到微信中。可以在微信公众号中查看推送的信息。

    需要注意的是,由于微信公众号的限制,每天只能发送一条模板消息,且不支持实时推送。所以推送的信息可能有一定的延迟。

    另外,如果想要定制更多的推送内容,可以修改 Workflow 文件中的 `data` 部分,添加自定义的键值对。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要将GitHub上的项目托管并实现微信推送,可以通过以下步骤进行操作:

    1、创建微信公众号
    首先,你需要拥有一个能够发送消息的微信公众号。如果没有的话,可以去微信公众平台注册一个公众号,并完成相关设置。

    2、配置服务器
    为了能够接收GitHub的推送信息,你需要在服务器上进行配置。你可以选择自己的服务器或者云服务器(如阿里云、腾讯云等)。具体操作如下:
    2.1 安装 Nginx
    “`shell
    sudo apt update
    sudo apt install nginx
    “`

    2.2 配置 Nginx
    打开 Nginx 的配置文件:
    “`shell
    sudo nano /etc/nginx/sites-available/default
    “`
    在文件中添加以下代码:
    “`nginx
    server {
    listen 80;
    server_name your-domain.com;
    location / {
    proxy_pass http://localhost:3000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    }
    “`
    保存并退出文件。重启 Nginx:
    “`shell
    sudo service nginx restart
    “`

    3、创建 GitHub Webhook
    现在,你需要在 GitHub 项目中创建一个 Webhook,以将推送信息发送到你的服务器。具体操作如下:
    3.1 打开 GitHub 项目,进入 “Settings” –> “Webhooks” –> “Add Webhook”。
    3.2 在 “Payload URL” 中填写你服务器的地址,如:http://your-domain.com。
    3.3 在 “Content type” 中选择 “application/json”。
    3.4 在 “Secret” 中填写一个密钥,以确保只有拥有正确密钥的请求才能触发推送。
    3.5 选择你想要的触发事件,并保存配置。

    4、编写接收推送的服务器脚本
    接下来,你需要在服务器上编写一个脚本来接收 GitHub 的推送信息,并将消息发送到微信公众号。你可以选择使用 Node.js、Python 等脚本语言来实现。
    以下是一个使用 Node.js 的示例脚本:
    “`javascript
    const http = require(‘http’);

    const server = http.createServer((req, res) => {
    if (req.method === ‘POST’ && req.url === ‘/github-webhook’) {
    let body = ”;
    req.on(‘data’, (chunk) => {
    body += chunk;
    });
    req.on(‘end’, () => {
    const payload = JSON.parse(body);
    // 解析 payload 中的信息,并发送到微信公众号
    sendToWeChat(payload);
    });
    res.statusCode = 200;
    res.setHeader(‘Content-Type’, ‘text/plain’);
    res.end(‘OK’);
    } else {
    res.statusCode = 404;
    res.end();
    }
    });

    server.listen(3000, () => {
    console.log(‘Server is running on port 3000’);
    });

    function sendToWeChat(payload) {
    // 在这里编写将 payload 中的信息发送到微信公众号的代码
    }
    “`
    你可以根据实际需求,编写自己的发送到微信公众号的代码。

    5、配置 GitHub Webhook 的 Secret 和 Payload URL
    为了确保只有合法的请求能够触发推送,需要在服务器脚本中检验密钥。在 `sendToWeChat` 函数中,你可以使用以下代码来验证密钥:
    “`javascript
    function sendToWeChat(payload) {
    const secret = ‘your-secret-key’; // 替换为你在 GitHub Webhook 中设置的密钥
    const signature = req.headers[‘x-hub-signature’];
    const signedPayload = `sha1=${crypto.createHmac(‘sha1’, secret).update(body).digest(‘hex’)}`;

    if (signature === signedPayload) {
    // 验证通过,进行后续发送到微信公众号的操作
    } else {
    // 验证失败,不做任何操作
    }
    }
    “`

    6、调试并部署
    在以上步骤完成后,你可以通过手动向服务器发送推送信息的方式进行测试。如果接收和发送功能正常,就可以将服务器代码部署到你的服务器上。

    7、配置微信公众号回调接口
    最后,你需要在微信公众号的管理后台中,配置服务器的回调接口。具体操作如下:
    7.1 登录微信公众号后台,进入 “开发” –> “基本设置”。
    7.2 将服务器地址设置为你的服务器的地址,如:http://your-domain.com。
    7.3 配置接收消息的验证 token 和消息加解密密钥,以确保消息正常接收和发送。这些 token 和密钥需要与你的服务器脚本中的验证逻辑一致。

    至此,你已经完成了将 GitHub 项目托管并实现微信推送的操作。现在,每当有推送事件发生时,GitHub 将会向你的服务器发送推送信息,并将消息发送到你的微信公众号上。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部