在gitee.com发现一个不错的微信django。https://gitee.com/xavier-lam/django-wechat/tree/master
但发现我没办法做分享页,
上面有提示在这页https://gitee.com/xavier-lam/django-wechat/blob/master/docs/cookbook/web.md。
我看不懂,得不到signature。
想请帮看一下,要怎么得到signature
wechat_django库怎么得到signature
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
阿里嘎多学长 2025-06-21 21:38关注阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
解决方案
在 Django-Wechat 库中,signature 是通过
get_signature方法来获取的。这个方法需要三个参数:timestamp、nonce和token。你可以在你的 Django 项目中创建一个
wechat模块,然后在其中创建一个utils.py文件,添加以下代码:import hashlib import time def get_signature(timestamp, nonce, token): signature = f'timestamp={timestamp}&nonce={nonce}&token={token}' signature = signature.encode('utf-8') signature = hashlib.sha1(signature).hexdigest() return signature然后,在你的视图函数中,使用这个方法来获取 signature:
from wechat.utils import get_signature def share_view(request): timestamp = int(time.time()) nonce = 'nonce_str' token = 'your_token_here' signature = get_signature(timestamp, nonce, token) # 使用 signature 进行验证和签名 return HttpResponse(signature)请注意,
token应该是你在微信开发平台上设置的 token,nonce可以是随机生成的字符串,timestamp是当前时间戳。如果你已经在
settings.py文件中设置了WECHAT_TOKEN,那么你可以在视图函数中使用settings.WECHAT_TOKEN来获取 token。解决评论 打赏 举报无用 1