内容目录 
提醒:本文最后更新于 2022-07-01 11:02,文中所关联的信息可能已发生改变,请知悉!

由于 Git 远程仓库部署工具 2.1 中未兼容 gogs 导致 webhook 钩子未能正常运行
解决方案:
在插件包中 WebHooks\init.py 文件中 150 行下方增加以下代码
  elif 'X-Gogs-Event' in request.headers:
            import hashlib
            import hmac
            sha256_sign = hmac.new(projectData['webhooks_password'].encode("utf-8"), request.data, hashlib.sha256).hexdigest()            
            if request.headers.get('X-Gogs-Signature') != sha256_sign:
                return_data["msg"] = "秘钥校验失败"
                return json.dumps(return_data)
            print("秘钥校验成功")
            
            
            if request.headers.get('X-Gogs-Event') != 'push':
                return_data["msg"] = "事件类型校验失败"
                return json.dumps(return_data)
            print("事件类型校验成功")
            
            
            if not request.json.get('ref').endswith('/'+projectData['branch']):
                return_data["msg"] = "分支校验失败"
                return json.dumps(return_data)
            print("分支校验成功")
            

正文完
   
  
  
 