gpt4 book ai didi

python - 无法在我的应用程序中验证 GitHub X-Hub-Signature

转载 作者:太空狗 更新时间:2023-10-29 14:28:11 25 4
gpt4 key购买 nike

我使用 GitHub 作为我的代码库。我为一个存储库创建了一个 webhook,因此当任何代码更改被推送到该存储库时,GitHub 会通知我的应用程序编译代码。在我的应用程序中编译代码之前,我需要验证 GitHub 请求中的 X-Hub-Signature,这是我在 python 中所做的。我发现我用 key 和负载计算的签名总是与 GitHub 提供的不匹配。对此有什么想法吗?谢谢!

import hmac
import hashlib
import pickle

def compile_code(request):
payload = pickle.dumps(request.DATA)
signature = hmac.new(APP_KEY, payload, hashlib.sha1).hexdigest()
if signature == request.META.get('X-Hub-Signature'):
do_compile_code()
else:
...

最佳答案

最后正确的方法是

signature = 'sha1=' + hmac.new(APP_KEY, request.body, hashlib.sha1).hexdigest()
if signature == request.META.get('HTTP_X_HUB_SIGNATURE'):
do_something()

关于python - 无法在我的应用程序中验证 GitHub X-Hub-Signature,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28228392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com